У меня есть несколько основных форм на странице, вызываемых получателем с уникальным идентификатором, соответствующим отображаемому контенту:
public function getForm($ID) {
$form = Form::create(
$this,
'',
$fields = FieldList::create(
TextField::create('Name', 'Name'),
HiddenField::create('ID', 'ID', $ID)
),
FieldList::create(
FormAction::create('Submit', 'Submit')
)
);
}
Если Name
не уникален, я хочу установитьсообщение об ошибке в функции submit
:
public function Submit($data, $form = null) {
//check stuff
$form->addErrorMessage('Name', 'Name is already taken', 'error');
return $this->redirectBack();
}
Это работает, но сообщение об ошибке отображается в первой форме, а не в соответствующей форме.
Как я могу поставить сообщение об ошибке направильная форма?Я использую SilverStripe 3.7.