Мне удалось «расширить» ProfileFormType, используя метод getParent()
в моей собственной Форме, но мне не удалось изменить атрибуты в существующих полях FosProfileType.(username и current_password).
Я хотел бы добавить атрибут autocomplete="off"
(возможно, не off
в качестве значения, я видел, что он игнорируется в последней версии браузера), но я не могу изменить его вBuilder
Я могу получить параметры и атрибуты, но поскольку нет методов setOption()
, я не могу заменить их.
Пока я переопределяю это в ветке, но я 'Я предпочел бы сделать это в форме, если это возможно.
Вот мой существующий код
public function buildForm(FormBuilderInterface $builder, array $options)
{
if ($builder->get('current_password')->hasOption('attr')) {
$attr = $builder->get('current_password')->getOption('attr');
$attr['autocomplete'] = 'new-password';
//setOption ???
}
//else add the 'attr'
...
}
И веточка:
{{ form_row(form.username) }}
{{ form_row(form.current_password, {'attr':{'autocomplete': 'new-password'}}) }}
Кстати,добавление этого в веточку только на вход password
также отключает автозаполнение для входа username
.Я не знаю почему, хотя