如何在 CakePHP 3 中显示 select 框的验证消息?
How to display validation message for select box in CakePHP 3?
下面你可以看到我的模型和视图。无法弄清楚如何显示验证错误消息。我怎么做?输入字段的所有其他验证消息均按预期显示。
class ProjectsTable extends Table {
public function validationDefault(Validator $validator) {
$validator->requirePresence('language');
return $validator;
}
}
<?php echo $this->Form->select('language', [
'option' => 'value',
'' => 'Select'
], ['default' => '']); ?>
这是我的做法。验证错误存储在实体中,并使用 errors()
方法访问。
<?php echo $this->Form->select('language', [
'option' => 'value',
'' => 'Select'
], ['default' => '']); ?>
<?php foreach($project->errors('language') as $error):?>
<div class="error-message"><?php echo $error;?></div>
<?php endforeach; ?>
另一种可能性是使用 $this->Form->input()
而不是 select()
。
<?php
$this->Form->input('language', [
'type' => 'select',
'options' => [
'option' => 'value'
]
]);
?>
下面你可以看到我的模型和视图。无法弄清楚如何显示验证错误消息。我怎么做?输入字段的所有其他验证消息均按预期显示。
class ProjectsTable extends Table {
public function validationDefault(Validator $validator) {
$validator->requirePresence('language');
return $validator;
}
}
<?php echo $this->Form->select('language', [
'option' => 'value',
'' => 'Select'
], ['default' => '']); ?>
这是我的做法。验证错误存储在实体中,并使用 errors()
方法访问。
<?php echo $this->Form->select('language', [
'option' => 'value',
'' => 'Select'
], ['default' => '']); ?>
<?php foreach($project->errors('language') as $error):?>
<div class="error-message"><?php echo $error;?></div>
<?php endforeach; ?>
另一种可能性是使用 $this->Form->input()
而不是 select()
。
<?php
$this->Form->input('language', [
'type' => 'select',
'options' => [
'option' => 'value'
]
]);
?>