У меня проблема с правилом пользовательских проверок в торте 2.XCake правило PHP пользовательских проверок
Я хочу, чтобы проверить введенный почтовый индекс является действительным, и, следовательно, функцией в классе почтового индексе вызываются из класса поста ,
Но валидация возвращает false все время.
AppModel в классе пост (правило-3 это):
'DELIVERYAREA' => array(
'rule-1' => array(
'rule' => array('between', 5, 5),
'message' => 'Bitte eine fünfstellige Postleitzahl eingeben'
),
'rule-2' => array(
'rule' => 'Numeric',
'message' => 'Bitte nur Zahlen eingeben'
),
'rule-3' => array(
'exists' => array(
'rule' => 'ZipExists',
'message' => 'Postleitzahl existiert nicht!'
)
)
),
AppModel в классе почтовый индекс:
class Zipcode extends AppModel {
var $name = 'Zipcode';
var $validate = array(
'zipcode' => array(
'length' => array(
'rule' => array('maxLength', 5),
'message' => 'Bitte einen Text eingeben'
),
'exists' => array(
'rule' => array('ZipExists'),
'message' => 'Postleitzahl existiert nicht!'
)
)
);
function ZipExists($zipcode){
$valid = $this->find('count', array('conditions'=> array('Zipcode.zipcode' =>$zipcode)));
if ($valid >= 1){
return true;
}
else{
return false;
}
}
Я надеюсь подмигнули что-то тупо легко? Заранее спасибо
- проверка длины работает или нет? – liyakat
Я не знаю, что вы имеете в виду. Каждое другое заданное правило работает нормально. – Karl
вы должны добавить «last => true» в правило проверки длины. нет необходимости запускать вызовы db, если индекс zip-кода имеет недопустимую длину в первую очередь. – mark