我设法在自己的Form中使用getParent()
方法来“扩展” ProfileFormType,但是我没有设法更改现有FosProfileType字段的属性。 (用户名和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
输入的自动完成功能。我也不知道为什么