使用cakephp 2.0 rc3。CakePHP驗證(+ preg_match() - 警告)
按照我的模型驗證:
var $validate = array(
'loginname' => array(
'minCharactersRule' => array(
'rule' => array('minLength', 3),
),
'alphaNumericRule' => array(
'rule' => 'alphaNumeric',
),
'uniqueRule' => array(
'rule' => 'isUnique',
),
'on' => 'create',
'required' => true,
'allowEmpty' => false,
),
'password' => array(
'minCharactersRule' => array(
'rule' => array('minLength', 5),
),
'required' => true,
'allowEmpty' => false,
),
'email' => array(
'emailRule' => array(
'rule' => array('email'),
),
'uniqueRule' => array(
'rule' => 'isUnique',
),
'required' => true,
'allowEmtpy' => false,
),
'display_name' => array(
'betweenRule' => array(
'rule' => array('between', 3, 20),
),
'uniqueRule' => array(
'rule' => 'isUnique',
),
'required' => true,
'allowEmpty' => false,
),
'registered' => array(
'rule' => array('date', 'ymd'),
'required' => false,
'allowEmpty' => false,
'on' => 'create'
),
'status' => array(
'rule' => 'numeric',
'required' => false,
'allowEmpty' => false,
'on' => 'create'
),
);
當我填寫各個領域,並提交即時得到「需要」的錯誤消息... 調試($這個 - >型號 - > validationErrors)說:
Array(
[loginname] => Array
(
[0] => required
)
[password] => Array
(
[0] => required
)
[email] => Array
(
[0] => required
)
[display_name] => Array
(
[0] => required
))
除了
一些難看出現警告:
Warning (2): preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash [CORE/Cake/Model/Model.php, line 2981]
(4次)
當我第一次看到它時,我以爲我誤輸入任何內容,但在檢查3-4次並得到同樣的錯誤後,我決定來這裏問:x 我錯過了什麼?運行的想法......
nahri
我知道notEmpty之間的差異,需要和字段在請求數據,我測試了一下。 它必須是別的東西(preg_match()的警告原因?) – nahri
我同意不管什麼「必需」設置爲shoudnt是任何警告。 – mark