2012-03-23 5 views
0

Пожалуйста, посмотрите на этот массив проверки в моей CakePHP приложение для модели Unit:правило проверки не работает

public $validate=array(
    'type'=>array(
     'rule'=>'notEmpty', 
     'message'=>'You must choose what type of property this is.' 
    ), 
    'unitnum'=>array(
     'rule'=>array('custom', '/^[a-z0-9 -\'.\/&]*$/i'), 
     'message'=>'Must be the name or number of your unit.' 
    ), 
    'unit_website'=>array(
     'rule'=>'url', 
     'message'=>'You must enter a valid website address.' 
    ), 
    'specials'=>array(
     'rule'=>'url', 
     'message'=>'You must enter a valid website address.' 
    ), 
    'rates'=>array(
     'rule'=>'url', 
     'message'=>'You must enter a valid website address.' 
    ), 
    'book'=>array(
     'rule'=>'url', 
     'message'=>'You must enter a valid website address.' 
    ), 
    'contact'=>array(
     'rule'=>'url', 
     'message'=>'You must enter a valid website address.' 
    ) 
); 

Каждое правило КРОМЕ один для работы 'экстренное сообщение. Я думал, что, возможно, ошибся в своем массиве проверки, моей форме или в моем поле базы данных, но это написано правильно.
Итак, я попытался переместить его в массив. Это не сработало. Я попытался удалить его и переписать его вручную. Нет.

Я думал, что, возможно, файл/tmp/cache/models/cake_model_defaults_units был виноват. Я удалил это, и все равно это не сработает.

Затем я подтвердил, что загруженная копия моего определения модели Unit.php была самой актуальной, актуальной версией. Да, это так.

Даже более странный, я попытался добавить в свою базу данных новые поля типа «foo» и «bar», а затем дать им правила проверки (например, «url» или «numeric»). Каждый раз, независимо от того, что я вхожу в поля формы, их проверка не прерывается, а торт обновляет мою базу данных.

Что мне не хватает?

+0

Вы пробовали переименовать поле? say "specials_website" – pollirrata

+1

Возможно, вы можете проверить, одинаковы ли все данные в 'beforeValidate()' методе с 'debug()'. –

+0

@pollirrata, попробовал это без успеха. – huzzah

ответ

1

Проблема была, после помощи @Paulo Rodrigues, что у меня было два экземпляра моей модели на моем сервере (ой!). Удалили их оба и установили новую копию правильной модели.

Смежные вопросы