フォーム入力されたデータのバリデーションは、ActiveRecord を継承したモデルクラスの rules() メソッドの定義で、プロパティごとに評価される。評価は、framework/validators ディレクトリにあるプログラムが実行されることで行なわれるが、自分で新しく作る必要がないほど量が豊富だ。
そのため、rules() メソッドを使うためのチートシートが用意されている。
Yii Framework 1.1 Validators Cheatsheet
バリデーションの書き方がよく分からない事もあるので、チュートリアル以外の使い方の例があれば、それを書き留めておきます。
public function rules() { return array( : array('day', 'type', 'type'=>'date', 'dateFormat'=>'yyyy-MM-dd'), ); }
‘type’ は ‘date’ の他、’time’、’datetime’、’integer’ などがある。形式指定のキーは、’time’ なら ‘timeFormat’、’datetime’ なら ‘datetimeFormat’ で、’integer’ の場合は必要ない。形式に使う記号は、クラスリファレンスの CDateTimeParser に説明がある。
(100610 yii-1.1.2.r2086)