在Symfony 4应用程序中的一个小树枝表单模板中,我需要有一个带变量的属性。
示例:
{{ form_widget(myform.field, {'attr': {'class': 'bidding-slider','data-slider-value': '800'}}) }}
我需要在"数据滑块值"中放入一个变量,而不是手动值。
我试过了:
{{ form_widget(myform.field, {'attr': {'class': 'bidding-slider','data-slider-value': '{{ variable }}'}}) }}
但它不起作用。。。
{{variable}}单独返回了我需要放入"数据滑块值"中的值。
第二次尝试:
我有扩展窗体类"TextType"方法buildView。为此,我添加了以下文件:src/Form/Extension/TextTypeExtension.php
// src/Form/Extension/TextTypeExtension.php
namespace AppFormExtension;
use SymfonyComponentFormAbstractTypeExtension;
use SymfonyComponentFormExtensionCoreTypeFileType;
class TextTypeExtension extends AbstractTypeExtension
{
/**
* Return the class of the type being extended.
*/
public static function getExtendedTypes(): iterable
{
// return FormType::class to modify (nearly) every field in the system
return [TextType::class];
}
public function buildView(FormView $view, FormInterface $form, array $options)
{
$tjm = $form->get('dailyrate')->getData();
$view->vars['attr']['data-slider-value'] = $tjm;
}
}
但现在我不确定如何在我的表单模板中使用它。。。
非常感谢你帮助我。
Alex
扩展表单的类方法buildView
:
public function buildView(FormView $view, FormInterface $form, array $options)
{
$view->vars['attr']['data-slider-value'] = ...//
}