Symfony2“;“假父母”;用于表单中的集合字段,仅用于可视化
我有一个项目实体,可以有几个好处 当然,我有一个项目表单类型来填充与项目相关的所有信息字段 当我展示ProjectX时,我需要一个“查看好处”的链接。在那里,我有一个表单中的福利列表,我可以添加新的或删除 项目-效益关系是一对多/多对一的无联接表 为了创建表单的视图,我考虑创建一个“BenefitsFormType”(不是复数形式),它将是:Symfony2“;“假父母”;用于表单中的集合字段,仅用于可视化,symfony,doctrine-orm,symfony-forms,Symfony,Doctrine Orm,Symfony Forms,我有一个项目实体,可以有几个好处 当然,我有一个项目表单类型来填充与项目相关的所有信息字段 当我展示ProjectX时,我需要一个“查看好处”的链接。在那里,我有一个表单中的福利列表,我可以添加新的或删除 项目-效益关系是一对多/多对一的无联接表 为了创建表单的视图,我考虑创建一个“BenefitsFormType”(不是复数形式),它将是: class BenefitsFormType extends AbstractType { public function buildForm(F
class BenefitsFormType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('benefits', 'collection', array('type' => new BenefitFormType(), 'allow_add' => true, 'label' => false,
'by_reference' => false,
))
->add('submit', 'submit', array('label' => 'Save'));
}
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'AppBundle\Entity\Benefits',
));
}
public function getName()
{
return 'Benefits';
}
}
而benefitFormType将拥有每个单一福利的所有领域
问题是我不需要存储福利类实体,福利实体只是一个用于可视化目的的福利集合
我不知道如何解决这个问题,而不复制我在项目和效益之间以及效益和效益之间的相同关系
我确实错过了简单的解决方法…如果不需要存储值,请使用“mapped”=>false选项。是的,我知道该选项可以避免存储字段,但这里我们讨论的是整个实体