在我ContentsTable,我添加了這樣的應用程序規則,並確保至少一個ImageEntity添加到ContentEntity保存時:如何讓RulesChecker向關聯的模型添加錯誤?
public function buildRules(RulesChecker $rules) {
$rules
->add(function($entity, $options) {
return $entity->get('type') !== 'gallery' || count($entity->images) > 0;
}, 'validDate', [
'errorField' => 'images.0.image',
'message' => 'Lade mindestens ein Bild hoch!'
]);
return $rules;
}
規則是應用,因爲save()
失敗了,但我本來期望對這種形式的輸入出現在Contents/edit.ctp
定義的錯誤消息:
<?php echo $this->Form->input('images.0.image', [
'label' => 'Neues Bild (optional)',
'type' => 'file',
'required' => false
]); ?>
據,但是,不是在所有加入。
如何設置errorField
選項將錯誤添加到此字段?
忽視你的形象是可選的和強制性的同時,你有沒有加入這一領域的獨特驗證?那麼規則消息將不會顯示。 –
不,我對ImageTable本身沒有驗證。圖像輸入是可選的,因爲它們有多個(image.0.image,image.1.image,images.2.image等)。它們都不是必需的,但我仍然需要檢查以確保至少有一個保存圖像。 –