CAKEPHP - '字段验证消息


CAKEPHP - 'isUnique' field validation message

我已经阅读了所有与这个主题相关的问题,但没有一个能解决我的问题。

我在模型上使用cakephp $validate,工作正常,但我需要放一条识别错误的消息,我把属性消息放在数组中,但它没有出现在任何地方。

如果有人能帮助我并给出例子,请在这里评论。

public $validate = [
        'number' => [
            'rule' => 'isUnique',
            'message' => 'Serial number should be unique.'
        ],
    ];

表单输入:

<div class="form-group col-md-6">
        <label class="form-label" for="serial">Serial number&nbsp;</label><br>
        <input id="serial" name="serial" value="<?php echo $data['serial']; ?>" type="text" data-bv-notempty="true" required="required" class="form-control" <?php echo $readonly; ?>>
        <div class="help-block with-errors"></div>
</div>

Form create:

echo $this->Form->create(null, array(
    "role" => "form",
    "data-toggle" => "validator",
));

它没有显示错误消息,因为您没有包含这样做的代码。

视图中的代码应该看起来像这样:

<div class="form-group col-md-6">
    <label class="form-label" for="serial">Serial number&nbsp;</label><br>
    <input id="serial" name="serial" value="<?php echo $data['serial']; ?>" type="text" data-bv-notempty="true" required="required" class="form-control" <?php echo $readonly; ?>>
    <div class="help-block with-errors">
        <? if ($this->Form->isFieldError('serial')) {
            echo $this->Form->error('serial');
        } ?>
    </div>
</div>

您可以使用FormHelper::input()代替为输入字段硬编码HTML,它会为您处理所有事情(包括错误)。

来自手册中的FormHelper页面:显示和检查错误