保留空电子邮件输入字段时出错

时间:2016-06-02 06:43:31

标签: php html cakephp cakephp-3.0

我在.ctp上有一个表单,它有多个输入字段。其中一个输入字段是type =“email”字段。提交时,该字段对我来说并不重要,我尝试了许多方法允许该字段保持为空但它仍然会让我误认为“此值已在使用中”。 下面是我的输入在页面中的样子,给出错误:

form error

这就是我的输入在.ctp中的样子:

    <tr style="height:30px;">
        <td style="width: 160px;"><?= 'E-mail' ?></td>
        <td>
            <?= $this->Form->input('email',['empty' => false, 'label' => false, 'required' => false]); ?>
        </td>
        <td style="width:75px;"></td>
        <td class="edit_hints" style="border-bottom: 1px solid lightgrey;">Completează cu adresa de e-mail a persoanei de contact.</td>
    </tr>

这就是我的$ validator的样子:

    $validator
        ->email('email')
        ->allowEmpty('email')
        ->requirePresence('email', false);

正如你所看到的,我已经尝试过我所研究的所有内容,这个问题仍然让我感到烦恼。我的想法是,电子邮件验证器可能会在我的数据库中的另一行中找到空值,它可能类似于此错误。有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:2)

确保您的表格中没有这样的buildRules

public function buildRules(RulesChecker $rules) { 

    $rules->add($rules->isUnique(['email'])); 
    return $rules; 

}