0
(これはCakePHPの新機能ですが、これは明らかなことかもしれませんが、2時間後に解決策を見つけることができませんでした。 "or"のあいまいな性質です。 ...)CakePHP検証 - isUnique OR inList
私はそれがisUnique
ルールまたはinList
ルールのいずれかを満たすの値について検証するように、isUnique
ルールを使用する既存のCakePHPのバリデーションルールを変更しようとしています。
前のコード:
'isUnique' => array(
'rule' => 'isUnique' ,
'message' => "We're sorry, but this QA number is already being used.",
'last' => TRUE,
),
マイ(故障した)コード:
'isUnique' => array(
'rule' => array(
'isUnique' ,
array('inList' , array('111213' , '141516' , '171819' , '202122'))
) ,
'message' => "We're sorry, but this number is already being used.",
'last' => TRUE,
),
ので、(このような単純なようなものであってもよい)、どのように一緒に "とあなたの文字列CakePHPのバリデーションルールすることができますOR "論理演算子? 「AND」ルールのカスケードを適用できることがわかります(特定の問題のテストごとに、そのテストに失敗した場合は値を拒否します)。「OR」ルールは私の頭を傷つけます...
助けていただければ幸いです。
:
は、次にようなあなたのルールを宣言!あなたの助けてくれてありがとう - 私のCakePHPへの最初の進出、私は無知だったので。パフォーマンスの理由から –
私は2つの条件を切り替えるでしょう。後者はDBコールを必要としません – mark
@mark良い点。あなたは、日付の検証のように 'allowEmpty' を使用しようとするかもしれ – deceze