2012-04-21 3 views
1

私はSymfony2で新しく、フォームをレンダリングしようとしています。基本ははっきりしていますが、私は隠されたフォームフィールドに問題があります。Symfony2/Twigで隠しフォームフィールドを特定する方法

それぞれのフォームウィジェットを別の表のセルにレンダリングしようとしています。しかし、forループを使用すると、最初のセルは_tokenウィジェットで埋められます。しかし、私は後でform_restで隠しフィールドをレンダリングするのが好きです。私が探しています何

<table> 
    <tr> 
    {% for element in form %} 
     <td class="header">{{ form_widget(element) }} </td> 
    {% endfor %} 
    </tr> 
</table> 

は、誰もがそれに私を助けることができる

<table> 
    <tr> 
    {% for element in form %} 
     {% if element.type != 'hidden' %} 
     <td class="header">{{ form_widget(element) }} </td> 
     {% endif %} 
    {% endfor %} 
    </tr> 
</table> 

のようなものでしょうか?どうもありがとう。

答えて

2

コード

<table> 
    <tr> 
    {% for element in form %} 
     {% if not element.ishidden %} 
     <td class="header">{{ form_widget(element) }} </td> 
     {% endif %} 
    {% endfor %} 
    </tr> 
</table> 

の下にこれを試してみては、これはあなたのお役に立てば幸いです。 ハッピーコーディング!

0

暗いところで少しのショットですが、ifステートメントでラベルを使用できますか?

{%if form_label(element)!= "hidden"%}?

0

この試してみてください:あなたがするんだsymfonyの2.1については

{% if "hidden" not in element.vars.types %} 

{% if "hidden" not in element.vars.block_prefixes %} 

は、それは私の年齢を取ったのSymfony 2.0の場合

<table> 
    <tr> 
    {% for element in form %} 
     {% if "hidden" not in element.vars.types %} 
     <td class="header">{{ form_widget(element) }} </td> 
     {% endif %} 
    {% endfor %} 
    </tr> 
</table> 
4

あなたが行うために使用しますそれについてのドキュメントがまったくないので、これを実行する必要があります。私はまた、あなただけ行うことができない理由として困惑してる:

{% if "hidden" element.vars.type %} 

私が意味する、これが最も明白な方法ではないでしょうか?

+0

Sf2.1を使用している場合(これが現在の標準です)。これは、人々が探していなければならない答えです。ありがとうマイク。 – JustinP

関連する問題