Top > 開発ガイド > コンポーネント開発逆引きリファレンス > コンテンツ承認プロセスを実装する
コンテンツ承認プロセスを実装する
対象バージョン
当ドキュメントはRubricks-0.6.x向けです。
概要
Rubricksはコンテンツの承認プロセスを容易にする拡張を提供しています。
またこの拡張を利用することで、コンテンツ承認ブロックに承認待ちのコンテンツとして表示されます。
扱われる承認ステータスは以下の3つです。
- 承認待ち
- 差し戻し
- 承認済み
イメージ
使い方
- コントローラでcontents_approval_controllerを呼び出します。
class News::NewsController < ApplicationController contents_approval_controller('/news/news_item', :approval_item => '[_News_Approval_Item]', :approval_action => 'main')
これによって以下のメソッドが追加されます。
| item_approve | 承認を行います。承認前にbefore_approve、承認後にafter_approveが呼ばれます。 |
| item_return | 差し戻しを行います。承認前にbefore_return、承認後にafter_returnが呼ばれます。 |
- モデルでacts_as_approvalを呼び出します。
class News::NewsItem < ActiveRecord::Base acts_as_approval
これによって以下のメソッドが追加されます。
| item_approve | 「承認」ステータスに更新する。 |
| item_return | 「差し戻し」ステータスに更新する。 |
| item_waiting | 「承認待ち」ステータスに更新する。 |
| is_approvaled? | 「承認」ステータスならtrue、違うならfalseを返す |
| item_return? | 「差し戻し」ステータスならtrue、違うならfalseを返す |
| item_waiting? | 「承認待ち」ステータスならtrue、違うならfalseを返す |
- 追加されたメソッドを使って承認プロセスを組み立てます。
- waiting_countの実装
コンテンツを表すモデル側に承認待ち件数を返すwaiting_countメソッドを実装します。
承認待ち件数はコンテンツ承認ブロックに表示されます。
API
contents_approval_controller(model_id, options)
- コントローラを拡張し、コンテンツの承認、差し戻しを行うメソッドを追加します。
| 引数 | 必須 | 初期値 | 型 | 説明 |
| model_id | ○ | - | String | 承認対象コンテンツを表すモデル |
| options | ○ | - | Hash | 下記「オプション」を参照 |
オプション
| キー | 必須 | 初期値 | 型 | 説明 |
| :approval_item | ○ | - | String | コンテンツを表すモデル名 |
| :approval_controller | ○ | - | String | 承認後に実行するコントローラ |
| :approval_action | ○ | - | String | 承認後に実行するアクション |
acts_as_approval(options)
- モデルを拡張してコンテンツの承認ステータスに関するメソッドを追加します。
| 引数 | 必須 | 初期値 | 型 | 説明 |
| options | - | - | Hash | 下記「オプション」を参照 |
オプション
| キー | 必須 | 初期値 | 型 | 説明 |
| :approval | - | 'approval' | String | 承認ステータスを表すカラム |
Attachments
- content_approval.jpg (21.3 kB) - added by yamaguchi on 03/19/09 10:23:38.

