验证规则不起作用

时间:2012-03-23 17:23:39

标签: validation cakephp model

请在我的cakephp应用程序中查看模型单元的验证数组:

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')。每一次,无论我在表单字段中输入什么内容,它们的验证都不会失败,而且蛋糕会更新我的数据库。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

问题是,在@Paulo Rodrigues的帮助下,我的服务器上有两份我的模型(哎哟!)。删除它们并安装正确模型的新副本。