Symfony - изменить атрибут существующего файла (FosUserBundle ProfileFormType) - PullRequest
0 голосов
/ 02 октября 2018

Мне удалось «расширить» 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.Я не знаю почему, хотя

...