TOP業務システム> 3. 定義情報の記述と配布物出力
OSS CMS Rubricks
Rubricksではじめる簡単・お手軽コミュニティポータル

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

著者:アスタリクス  大西 正太   2007/1/15
前のページ  1  2  3  4
3. 定義情報の記述と配布物出力

   完成したサンプルコンポーネントは、rzip形式に出力することで配布できるようになります。rzipに出力するにはまず各種定義ファイルを整備する必要があります。
コンポーネント定義ファイルのリバース生成

   現在のデータベースの状態をリバースしてコンポーネント定義ファイルを自動生成します。

>ruby script/generate rubricks_component_info mybbs
   exists components/mybbs
   exists components/mybbs/_install
   exists components/mybbs/_install/db
overwrite components/mybbs/_install/component_info.rb? [Ynaq] y
   force components/mybbs/_install/component_info.rb


データベース定義ファイルの作成

   データベース定義ファイルをリスト5のように作成します。データベース定義ファイルはRails標準のmigration記法で記述します。

リスト5:RAILS_ROOT/components/mybbs/_install/db/001_mybbs_schema.rb
class MybbsSchema < ActiveRecord::Migration
   def self.up
      create_table "mybbs_items", :force => true do |t|
         t.column "title", :string, :limit => 192, :default => "", :null => false
         t.column "rubricks_user_id", :integer, :limit => 10, :default => 0, :null => false
         t.column "content", :text, :default => "", :null => false
         t.column "created_at", :datetime, :null => false
      end
   end

   def self.down
      drop_table :mybbs_items
   end
end


rzipファイルの生成

   下記コマンドを入力することでカレントフォルダにrzipファイルが作成されます。

>ruby script\rzip mybbs

   生成したrzipファイルは各種ライセンスに基づいて自由にWebサイトなどで公開することができます。

次のステップ

   今回は非常にシンプルなコンポーネントを開発しました。Rubricksでは他にも表2のようなライブラリを提供しており、これらを利用することでより優れたWebサイトを構築することができます。

  • アクセス権限チェック
  • ブロック、ウィジェット
  • WYSIWYGエディタ
  • JavaScriptでのリアルタイムバリデーション
  • script.spinelzを用いたRIA部品
  • 国際化
  • カレンダー連携

表2:Rubricksのライブラリ

   これらのライブラリに関する情報は下記のURLから得ることができます。



終わりに

   全4回にわたってRubricksについて紹介してきました。本連載ではRubricksの概要からインストール、コンポーネントによる機能拡張と作成方法まで、一通り解説しています。これをきっかけにRubricksの導入やコンポーネント作成に興味を持っていただければ幸いです。

   Rubricksはまだ開発途上のプロダクトです。今後もバージョンアップをキャッチアップしていくことで新たな機能が発見できるでしょう。

前のページ  1  2  3  4


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


INDEX
第4回:Rubricksコンポーネントの作成
  Rubricksコンポーネントの概要
  サンプルコンポーネントの作成
  2. Webブラウザで確認しながら実装
3. 定義情報の記述と配布物出力