Я сам использую SF2-формы и блок проверки правильности. Есть ли способ генерировать атрибуты HTML из аннотаций, которые создаются с помощью проверки подлинности symfony? Например:
Преобразовать это -
/**
* @var
* @Assert\Length(min="2", max="2")
*/
protected $state;
в HTML-код
<input type="text" maxlength="2" ... >
Как правило, я знаю, что установлен в SF2, установив размер для строки в аннотации Doctrine, но я использую Aura.SQL для взаимодействия с базой данных.
Спасибо за любую информацию!
Ну, согласно документации, "угадывание" активируется, когда вы опускаете второй аргумент методу add() (или передаете ему null).
Если вы используете эту функцию, Symfony попытается угадать "тип" для поля и правильные значения нескольких параметров поля на основе метаданных проверки (и информации доктрины).
Таким образом, теоретически, он должен дать вам ожидаемый результат, если вы опустите второй аргумент или передадите ему null
(он будет отображать атрибуты html5 в выходном input
).
Если по какой-либо причине он не работает, вы всегда можете принудительно выполнить его рендеринг в методе добавления (он также отменяет любые догадки, если он существует):
->add('state', null, array('attr' => array('minlength' => 2,'maxlength' => 2)))
или даже в шаблоне ветки:
{{ form_widget(form.state, {'attr': {'maxlength' : 2, 'minlength' : 2 } }) }}
Я думаю, что ты, которого ищете, не существует. Кстати, вы можете реализовать его, создав свой собственный угадатель типа формы