第4回:Rubricksコンポーネントの作成 (2/4)

OSS CMS Rubricks
Rubricksではじめる簡単・お手軽コミュニティポータル

第4回:Rubricksコンポーネントの作成

著者:アスタリクス  大西 正太   2007/1/15
前のページ  1  2  3  4  次のページ
サンプルコンポーネントの作成

   今回はサンプルとして簡単なBBSシステムを作成してみましょう。
開発の準備

   サンプルを開発する前に、Rubricksが動作する状態にします(本連載の「第2回:Rubricksのインストール」を参考にしてください)。

   開発中はRubricksを起動しておきます。開発しながらWebブラウザでその都度動作確認していくと開発効率が高まるでしょう。またRubricksの開発ソースの文字コードがすべてUTF-8に統一されるようにエディタなどの設定をしてください。

   それでは図1で紹介した流れにそって解説していきます。

  1. 雛形の自動生成
  2. Webブラウザで確認しながら実装
  3. 定義情報の記述と配布物出力

表1:開発の流れ

   また今回作成するサンプルのソースコードが下記よりダウンロードできますので、参考にしてください。

サンプル
ZIPファイル mybbs.zip  (ZIPファイル/12.2KB)


1. 雛形の自動生成

   まずコンポーネント、コントローラ、ビュー、モデル、メニューの雛形を生成していきましょう。


コンポーネント雛形の生成

   下記のようにジェネレータを実行します。なおコンポーネント名はインストール済みコンポーネント内で一意でなくてはなりません。トラブルを避けるためにできる限りユニークな名称にすることをお勧めします。

> ruby script/generate rubricks_component mybbs
      create components/mybbs
      create components/mybbs/languages
      create components/mybbs/_install
      create components/mybbs/_install/db
      create components/mybbs/_install/images
      create components/mybbs/languages/japanese.rb
      create components/mybbs/languages/english.rb
      create components/mybbs/_install/component_info.rb
      create components/mybbs/_install/db/001_mybbs_schema.rb
      create components/mybbs/_install/images/mybbs.gif
      create components/mybbs/_install/images/mybbs_active.gif
      created install/mybbs.rzip
   installed mybbs


コントローラとビュー雛形の生成

   先ほどと同様にジェネレータを用い、コンポーネント名とコントローラ名、アクション名を指定して自動生成します。

> ruby script/generate rubricks_controller mybbs index main
   exists components/mybbs
   create components/mybbs/index
   create components/mybbs/index/main.rhtml
   create components/mybbs/index_controller.rb
   create components/mybbs/index_helper.rb


モデル雛形の生成

   モデル雛形を生成する前にテーブルを作成します。MySQLのコンソールを立ち上げ、リスト1のようにテーブルを作成してください。

リスト1:テーブル生成の記述

(画像をクリックすると別ウィンドウに拡大図を表示します)

   Rubricksでは原則的にテーブル名の頭にコンポーネント名をつけてください。これは、異なるコンポーネント間でテーブル名が衝突することを防止するためです。また通常のRails開発の際と同様にテーブル名は複数形にしてください。

   続いてモデルの作成をします。通常のRails開発の際と同様にテーブル名の単数形を指定してジェネレータを実行します。

>ruby script/generate rubricks_model mybbs mybbs_item
   exists components/mybbs
   create components/mybbs/mybbs_item.rb


メニューの生成

   作成したコントローラをRubricksのメニューに登録します。ここでも同様にジェネレータを用い、先ほど作成したコントローラを指定します。

> ruby script/generate rubricks_menu mybbs index
      created Menu icon.
      created Menu item

   ここまでの操作で、図3のようにWebブラウザ上から作りかけのサンプルコンポーネントを呼び出すことが可能です。メニューに開発中のコンポーネントが追加されています。

生成されたサンプルコンポーネント
図3:生成されたサンプルコンポーネント
(画像をクリックすると別ウィンドウに拡大図を表示します)

前のページ  1  2  3  4  次のページ


アスタリクス株式会社  大西 正太
著者プロフィール
株式会社アスタリクス   大西 正太
JavaEEフレームワークの設計構築や開発プロセス策定などの業務を経て、現在は新規ビジネス創生に携わる。Ruby on Rails上に構築したオープンソースのCMS「Rubricks」(http://rubricks.org/)のコミッタ。


INDEX
第4回:Rubricksコンポーネントの作成
  Rubricksコンポーネントの概要
サンプルコンポーネントの作成
  2. Webブラウザで確認しながら実装
  3. 定義情報の記述と配布物出力
Rubricksではじめる簡単・お手軽コミュニティポータル
第1回 Railsで構築されたオープンソースCMS「Rubricks」
第2回 Rubricksのインストール
第3回 Rubricksコンポーネントの紹介
第4回 Rubricksコンポーネントの作成

人気記事トップ10

人気記事ランキングをもっと見る