簡體   English   中英

在樹枝模板中Symfony2嵌入式表單呈現

[英]Symfony2 embedded forms rendering in a twig template

我是Symfony和樹枝模板的新手。 我的問題是我無法弄清楚如何在樹枝模板中單獨呈現嵌入表單的字段。 我嘗試搜索它,但可能其他人使用了一些不同的形式,這些示例對我不起作用。

我的表格:

class RegistrationType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('user', new UserType());
        $builder->add(
            'terms',
            'checkbox',
            array('property_path' => 'termsAccepted')
        );
        $builder->add('Register', 'submit');
    }

    public function getName()
    {
        return 'registration';
    }
}

class UserType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('username', 'text');
        $builder->add('name', 'text');
        $builder->add('email', 'email');
        $builder->add('password', 'repeated', array(
           'first_name'  => 'password',
           'second_name' => 'confirm',
           'type'        => 'password',
           'invalid_message' => 'Neteisingai pakartotas slaptažodis.',
        ));
    }

    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'Keliones\MainBundle\Entity\User'
        ));
    }

    public function getName()
    {
        return 'user';
    }
}

逐場渲染的外觀應該如何尋找?

基本上,Symfony和Form Framework在Type配置類的基礎上創建Form對象。 表單對象具有createView()方法,該方法傳遞給視圖http://api.symfony.com/2.4/Symfony/Component/Form/FormView.html

在樹枝中,您可以像這樣訪問嵌入的FormView對象:

{# access embeded form #}
{{ form_row(form.user.username) }}
{{ form_row(form.user.email) }}
{{ form_row(form.user.password) }}
{# access main form field #}
{{ form_row(form.terms) }}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM