【发布时间】:2019-03-31 18:00:18
【问题描述】:
拥有此架构:
我想做一个这样的表格
我不知道如何构建表单。
- 一个公司有很多人。
- 在一家公司中,我们有一个公司层次结构:员工、老板、下属
- 工人可以有下属工人 这就是为什么我在 company_person 中添加了一个反曲链接,用于父子概念链接。
角色在这里是为了说明工人的角色是什么。
公司
class Company
{
/**
* @ORM\Column(type="string", length=45, nullable=true)
*/
private $name;
/**
* @ORM\OneToMany(targetEntity="CompanyPerson", mappedBy="company")
*/
private $companypersons;
}
人物
class Person
{
/**
* @ORM\Column(type="string", length=45, nullable=true)
*/
private $name;
/**
* @ORM\OneToMany(targetEntity="CompanyPerson", mappedBy="person", cascade={"persist"})
* @var ArrayCollection
*/
private $companypersons;
}
状态
class Status
{
/**
* @ORM\Column(type="string", length=45, nullable=true)
*/
private $libelle;
/**
* @ORM\OneToMany(targetEntity="CompanyPerson", mappedBy="statut")
*/
protected $companypersons;
}
公司人员
class CompanyPerson
{
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $dateAdded;
/**
* @ORM\ManyToOne(targetEntity="Company", inversedBy="companypersons",
cascade={"persist"})
*/
private $company;
/**
* @ORM\ManyToOne(targetEntity="Person",
inversedBy="companypersons", cascade={"persist"})
*/
private $person;
/**
* @ORM\ManyToOne(targetEntity="Status",
inversedBy="companypersons", cascade={"persist"})
*/
private $status;
/**
* @ORM\ManyToOne(targetEntity="CompanyPerson", inversedBy="childrens")
*/
private $parent;
/**
* @ORM\OneToMany(targetEntity="CompanyPerson", mappedBy="parent")
*/
private $childrens;
public function __construct(Company $companay= null, Person $person =
null, CompanyPerson $parent = null, Status $status = null)
{
$this->companay = $companay;
$this->person = $person;
$this->parent = $parent;
$this->status = $status;
$this->childrens = new ArrayCollection();
}
}
我使用集合嵌入表单,但我无法创建此表单,因为它对我来说不是很复杂。
【问题讨论】:
标签: symfony doctrine symfony-forms symfony-3.4