在基本级别上,我想拥有一个invoice
实体,该实体可以具有and InvoiceTo
字段。 InvoiceTo
字段应与ManyToOne
实体或IndividualCustomer
实体具有CompanyCustomer
关系。
到目前为止,所有读物都使我相信这是“教义继承映射”的一个案例,但这仅仅是因为我对到目前为止所发现的文档或很少讨论的博客没有任何意义。学说中的多态关系。
我想通过以下方式(如果可能的话)实现它,
// First Example, were the invoice is sent to an IndividualCustomer
$individualCustomer = $this->getDoctrine()
->getRepository(individualCustomer::class)
->find($id);
$invoiceTo = new InvoiceTo($individualCustomer);
$invoice = new Invoice();
$invoice->setAmt(100.00);
$invoice->setInvoiceTo($invoiceTo);
// Second Example, were the invoice is sent to CompanyCustomer
$companyCustomer = $this->getDoctrine()
->getRepository(companyCustomer::class)
->find($id);
$invoiceTo = new InvoiceTo($companyCustomer);
$invoice = new Invoice();
$invoice->setAmt(100.00);
$invoice->setInvoiceTo($invoiceTo);
我真的很感激相同的任何指针。由于某些原因,所有文档似乎都很神秘。感谢您的时间和帮助。
答案 0 :(得分:0)
为了使您的字段invoiceTo
引用IndividualCustomer
还是CompanyCustomer
,一种解决方案是创建一个父类。假设Customer
是IndividualCustomer
和CompanyCustomer
的继承对象。
从那里,您的invoiceTo
字段可以直接定位到Customer
。