2016-04-18 10 views
0

私は、FooCollectionと呼ばれるエンティティのコレクションを持っています。このコレクションはAPIの応答から構築されます。私は教義を使わない。エンティティはFooクラスのインスタンスで、それぞれBarという名前のクラスを保持します。私はテンプレートのような公式リストを生成します:symfonyフォームとしてのコレクション

<form> 
    <ul> 
    {% for foo in fooCollection %} 
     <li><input type="checkbox" name="foo[{{foo.id}}]" value="1"> <label>{{foo.bar.title}}</label></li> 
    {% endfor %} 
    </ul> 
</form> 

このフォームリストを作成するにはどうすればいいですか?

<?php 

class Foo 
{ 
    private $bar; 
    private $id; 

    public function getId() 
    { 
     return $this->id; 
    } 

    public function setBar(Bar $bar) 
    { 
     $this->bar = $bar; 
    } 

    public function getBar() 
    { 
     return $this->bar; 
    } 
} 

class Bar 
{ 
    private $title; 

    public function getTitle() 
    { 
     return $this->title; 
    } 
} 

class FooCollection extends \Doctrine\Common\Collections\ArrayCollection 
{ 
} 
+0

は、フォームビルダを使用している場合、あなたはこれを試すことができますエンティティを使用してリストを作る:http://symfony.com/doc/current/reference/forms/types/entity.html –

+0

ドキュメントから:Doctrineエンティティのオプションをロードするための特別なChoiceTypeフィールド。私はdoctrineを使用しません –

答えて

0

あなたがドロップダウンのための「選択」フィールドタイプを使用することができます。

は、ここで例のエンティティとコレクションです。

Fooのインスタンスを配列に選択し、これをChoiceTypeのchoicesオプションに渡してドロップダウンに入力します。

参照:symfonyの2フォームのhttp://symfony.com/doc/current/reference/forms/types/choice.html#choices

+0

これはドロップダウンではなく、ulリストです。 –

関連する問題