如何为实体制作单选按钮

时间:2013-10-26 12:41:11

标签: forms symfony doctrine-orm

我有

等表格

在User.php中

  /**
 *
 * @ORM\ManyToOne(targetEntity="Acme\UserBundle\Entity\IconPics", inversedBy="icon")
 * @ORM\JoinColumn(name="icon", referencedColumnName="id",nullable=true)
 */
private $icon;
Icon.php中的

/**
 *
 * @ORM\OneToOne(targetEntity="Acme\UserBundle\Entity\User", inversedBy="icon")
 * @ORM\JoinColumn(name="icon", referencedColumnName="id")
 */
private $icon;

图标表就像

|id |icon
|1  |aaa.png
|2  |bbb.png
|3  |ccc.png

我想让用户通过表单选择一个图标。

$builder->add('icon',null,array('label' => 'select icon'));

它显示了HTML下拉,用户可以选择aaa~ccc.jpg

之一

但我想使用单选按钮。

$builder->add('icon','choice',array('label' => 'select icon'));

$builder->add('icon','radio',array('label' => 'select icon'));

我尝试了这些,但他们没有显示候选人。

如何制作单选按钮以选择数据库icon.php中的项目?

1 个答案:

答案 0 :(得分:3)

如果您想使用单选按钮选择一个图标实体,那么您正在寻找Entity field type属性设置为true的{​​{3}}和{ {3}}设置为false

$builder->add('icon', 'entity', array(
    'class' => 'AcmeUserBundle:IconPic',
    'property' => 'image', // .. or whatever property the image location is stored.
    'expanded' => true,
    'multiple' => false,
));