0

我有表如

在用户.php

  /**
 *
 * @ORM\ManyToOne(targetEntity="Acme\UserBundle\Entity\IconPics", inversedBy="icon")
 * @ORM\JoinColumn(name="icon", referencedColumnName="id",nullable=true)
 */
private $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 中的项目?

4

1 回答 1

3

如果您想使用单选按钮选择您的图标实体之一,您正在寻找属性设置为并设置为的实体字段类型expandedtruemultiplefalse

$builder->add('icon', 'entity', array(
    'class' => 'AcmeUserBundle:IconPic',
    'property' => 'image', // .. or whatever property the image location is stored.
    'expanded' => true,
    'multiple' => false,
));
于 2013-10-26T12:57:10.217 回答