在Symfony2中渲染没有价值的表格

阮先生

我正在构建一个表单,该表单在某些字段中具有默认值:

$builder->add('field', 'text', array('data' => 'Default value');

然后在Twig中渲染此表单字段,如下所示:

{{ form_widget(form.field) }}

一切正常,但我不想在HTML呈现的输入标签中设置“默认值” ,因为我只希望内部使用此默认值,而最终用户不知道该值。Symfony2中是否有任何内置方法可以处理该问题,或者我必须制作一些自定义代码?

乔万·佩罗维奇(Jovan Perovic)

您可以修改您的实体以执行此操作:

class MyEntity{

    const DEFAULT_FOO = "Default value";
    // ...

    private $foo;

    // ...

    public function setFoo($foo){
        if ( $foo === null ){
            $foo = self::DEFAULT_FOO;
        }

        $this->foo = $foo;
    }

    // ...
}

然后确保进行设置by_reference,以确保每次都调用setter:

$builder->add('field', 'text', array(
    'by_reference' => true
));    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章