ORMを拡張するモデルクラスを持つプロジェクトにKohana 3.3を使用しています。MySQL データベースには、このモデルに対応するテーブルがあります。このテーブルには、同じ値であってはならない 3 つの列があります。ユーザーがこのモデルに追加できるビューもあります。item1、2、3 はテキスト入力フィールドです。item1,2,3 が同じ値を持つことはできないというルールを適用するモデルに検証を記述しようとしています。コードの構造と関連部分は次のようなものです。
データベース テーブル:
id | column1 | othercolumns | item1 | item2 | item3
モデルクラス:
public function rules(){
return array(
"item1" => array( array('matches', array(':validation',':field','item2') ) ),
"item1" => array( array('matches', array(':validation',':field','item3') ) ),
//same for item2 and item3
);
}
this、this、およびthisページを読みましたが、これをモデルに直接実装する方法がわかりません。(クライアント側の JavaScript でこれを行うこともできますが、それをフレームワークに任せるのは避けたいです!)