我正在研究Symfony2中的Web应用程序.在某些方面,我需要一些Symfony中更先进的建议/解释.
我的数据库的一部分设置如下:
我有属于卡属性集的卡,由卡值组成.
我有卡属性集有很多属性,卡属性可以属于许多卡属性集(显然是多对多的关系).
然后,根据card属性,该属性具有属性值,例如,text具有varchar类型的value_text,boolean具有boolean类型的value_boolean.
您可以想象在创建表单时创建新卡,表单需要生成输入字段,具体取决于它所属的卡属性集,还取决于属于属性集的属性吗?
所以这是我的问题; 有没有办法根据用户选择的实体动态生成表单中的输入字段.我读过有关活动但我不确定它们是否满足我的需求.
这是我的实体的代码(我删除了Getters和Setters以获得更简单的视图):
卡:
/**
* card
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="clientsBundle\Entity\cardRepository")
* @UniqueEntity(
* fields={"cardLabel"},
* message="A card with this label already exists"
* )
*/
class card
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="card_label", type="string", length=999)
*/
private $cardLabel;
/**
* @ORM\ManyToOne(targetEntity="project", inversedBy="project_cards")
* @ORM\JoinColumn(name="project_id", referencedColumnName="id", onDelete = "SET NULL")
*/
protected $card_project;
/**
* @ORM\ManyToOne(targetEntity="cardAttributeSet", …Run Code Online (Sandbox Code Playgroud)