Comment モデルのカスタマイズ

Comment モデルでは、主に rules() メソッドと attributeLabels() メソッドをカスタマイズします。attributeLabels() メソッドは属性の名前と属性のラベルの対応表を返します。relations()Gii ツールで生成したコードで十分なので手を入れる必要はありません。

rules() メソッドのカスタマイズ

最初に、Gii ツールで生成した検証ルールをカスタマイズします。コメント用のルールは以下の通りです。



上記の指定内容は次のような意味です。author, email, content 属性は必須、author, email, url は最大128字、email 属性は有効なメールアドレスであること、url 属性は有効な URL であること。

attributeLabels() メソッドのカスタマイズ

次に attributeLabels() メソッドをカスタマイズして、モデルの各属性を表示する際のラベルを宣言します。このメソッドは、名前-ラベルの組で構成される配列を返します。CHtml::activeLabel() を呼ぶと属性のラベルを表示できます。



ヒント: attributeLabels() で属性のラベルを宣言していない場合、アルゴリズムに従って適切なラベルが生成されます。例えば、create_timecreateTime という属性には、Create Time というラベルが生成されます。

保存プロセスのカスタマイズ

コメントの作成時刻を記録したいので、Post モデルと同様に、CommentbeforeSave() メソッドをオーバーライドします。



$Id$