验证数据库中不存在的字段

时间:2011-02-23 08:03:29

标签: cakephp

我可以建模验证数据库中不存在的字段。它不适用于以下代码

模型

'agree' => array(
    'comparison' => array(
            'rule' => array('comparison', 'equal to', 1),
            'message' => 'Accept the Proposal',
            'allowEmpty' => false,
            //'required' => true,
            //'last' => false, // Stop validation after this rule
            //'on' => 'create', // Limit validation to 'create' or 'update'  operations 
    ), 
),

。 图

<div class="input checkbox">
<input type="hidden" name="data[Season][agree]" id="SeasonAgree_" value="0">
<input type="checkbox" name="data[Season][agree]" value="1" id="SeasonAgree">
<label for="SeasonAgree"></label> Seasons Proposal displayed is correct
</div>

2 个答案:

答案 0 :(得分:2)

您可以验证数据库中没有的字段。 例如在注册表单中,您可以验证“我接受用户术语”字段,并且不要将此值保存在数据库中。

在您的代码中,您正在验证“接受”而非“同意”。实际上,您有两个具有相同名称的输入("data[Season][agree]"),这可能是个问题。

答案 1 :(得分:1)

验证不在模型中的字段是可能的。您的错误是在模型中验证“接受”,而在视图中,该字段称为“同意”。