Top > 開発ガイド > コンポーネント開発Tips集 > グローバルヘルプ

グローバルヘルプ

対象バージョン

当ドキュメントはRubricks-0.6.x向けです。

概要

Rubricksではコンポーネントの利用方法を説明するヘルプを表示することができます。 コンポーネント作者が機構にあわせてヘルプファイルを作成することで、統一的なヘルプを提供することができます。

構成

ヘルプファイルの配置場所と構成のイメージは下図の通りです。 基本的に、これらのファイル構成どおりにヘルプの目次ツリーが表示されます。

RAILS_ROOT/components/コンポーネント名/help/japanese
├─0000.rhtml
│  0010.rhtml
│  0020.rhtml
│  title.rhtml
│
├─0010
│  │  0010.rhtml
│  │  title.rhtml
│  │
│  └─0010
│          0010.rhtml
│          title.rhtml
│
└─0020
        0010.rhtml
        title.rhtml

ヘルプコンテンツの内容

一つ一つのヘルプコンテンツは通常のrhtmlで記述します。

通常のコンテンツ

  • rhtmlの命名自体は原則的に自由(title.rhtmlを除く)
  • ヘルプでの目次表示順はフォルダ・ファイル名順でソートされる
    • 数値にすると管理しやすい
  • help_titleタグにこのページのタイトルを記述する
    • ヘルプの目次に使われる
    • ページ内でタイトルとして表示される
  • 通常のrhtml同様HTMLタグやrailsのヘルパタグを使える
    • 必要に応じて画像なども利用可能

#japanese/0010.rhtml

<%= help_title 'システムコンポーネント概要1' %>
システムコンポーネントについての説明を始めます。
重要な点は下記の通り。
<ul>
  <li>アクセス制御を考える</li>
  <li>..</li>
</ul>
...

title.rhtml

  • title.rhtmlは特殊なファイル
  • title.rhtmlにhelp_titleタグを書くことで、ヘルプ目次のフォルダ名称を指定できる

#japanese/title.rhtml

<%= help_title 'システムコンポーネント' %>

アクセス制御

Rubricksのグループベースのアクセス制御をヘルプにも適用することができます。

<%= help_title 'システムコンポーネント', :auth_function => :admin %>
  • アクセス制御はhelp_titleタグのオプションで指定
  • 該当するコンポーネントについて、指定した権限を持っていないとヘルプ自体が目次に表示されなくなる
  • 何も指定しない場合は権限「:access」が適用された状態になっている

多言語化

「RAILS_ROOT/components/コンポーネント名/help」の下のフォルダ名は言語名です。 選択されている言語によって表示されるヘルプが配下のものに自動的に切り替わります。

キャッシュ

グローバルヘルプの目次情報を構築するためにはローカルファイルを読み込みながら解釈を行う必要があり、多くのリソースを消費します。 そのため、Rubricksではキャッシュを効かせて目次情報構築を最小限に抑えています。

目次情報の再構築は下記の条件いずれかを満たした状態でヘルプを呼び出すと実施されます。

  • environmentがproductionでない場合
  • 一般設定のデフォルト言語が変更された場合
  • インストールされているコンポーネントの構成が変わった場合