我已经阅读了所有与这个主题相关的问题,但没有一个能解决我的问题。
我在模型上使用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 </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 </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页面:显示和检查错误