Symfony Validator Standalone - HTML 属性
Symfony Validator Standalone - HTML Attributes
我正在单独使用 SF2 表单和验证程序包。无论如何要从使用 symfony 验证器创建的注释中生成 HTML 属性?例如:
转换这个 -
/**
* @var
* @Assert\Length(min="2", max="2")
*/
protected $state;
进入HTML代码
<input type="text" maxlength="2" ... >
通常,我知道这是通过在 Doctrine 注释中设置字符串的大小在 SF2 中设置的,但我使用 Aura.SQL 来处理与数据库的交互。
感谢您提供任何信息!
我认为您要查找的内容不存在。
顺便说一句,您可以通过创建自己的 form type guesser
来实现它
嗯,根据 documentation,当您省略 add() 方法的第二个参数(或者如果您将 null 传递给它)时,"guessing" 被激活。
如果您使用此功能,Symfony 将尝试根据验证元数据(和原则信息)猜测字段的 "type" 和许多字段选项的正确值。
因此,理论上,如果您省略第二个参数或将 null
传递给它,它应该会为您提供预期的输出(它将在输出的 [=13= 中呈现 html5 属性]).
如果由于任何原因它不起作用,您始终可以在 add 方法中强制呈现它(如果它存在,它也会覆盖任何猜测):
->add('state', null, array('attr' => array('minlength' => 2,'maxlength' => 2)))
甚至在树枝模板中:
{{ form_widget(form.state, {'attr': {'maxlength' : 2, 'minlength' : 2 } }) }}
我正在单独使用 SF2 表单和验证程序包。无论如何要从使用 symfony 验证器创建的注释中生成 HTML 属性?例如:
转换这个 -
/**
* @var
* @Assert\Length(min="2", max="2")
*/
protected $state;
进入HTML代码
<input type="text" maxlength="2" ... >
通常,我知道这是通过在 Doctrine 注释中设置字符串的大小在 SF2 中设置的,但我使用 Aura.SQL 来处理与数据库的交互。
感谢您提供任何信息!
我认为您要查找的内容不存在。 顺便说一句,您可以通过创建自己的 form type guesser
来实现它嗯,根据 documentation,当您省略 add() 方法的第二个参数(或者如果您将 null 传递给它)时,"guessing" 被激活。
如果您使用此功能,Symfony 将尝试根据验证元数据(和原则信息)猜测字段的 "type" 和许多字段选项的正确值。
因此,理论上,如果您省略第二个参数或将 null
传递给它,它应该会为您提供预期的输出(它将在输出的 [=13= 中呈现 html5 属性]).
如果由于任何原因它不起作用,您始终可以在 add 方法中强制呈现它(如果它存在,它也会覆盖任何猜测):
->add('state', null, array('attr' => array('minlength' => 2,'maxlength' => 2)))
甚至在树枝模板中:
{{ form_widget(form.state, {'attr': {'maxlength' : 2, 'minlength' : 2 } }) }}