我已经为几个共享相同财产的实体创建了基类,我认为这是一个很好的用例
@MappedSuperclass
:
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\MappedSuperclass
*/
abstract class Invoiceable
{
/**
* @ORM\ManyToOne(targetEntity="Invoice")
* @ORM\JoinColumn(name="invoiceId", referencedColumnName="id")
*
* @var Invoice|null
*/
protected $invoice = null;
/**
* @ORM\ManyToOne(targetEntity="CreditNote")
* @ORM\JoinColumn(name="creditNoteId", referencedColumnName="id")
*
* @var CreditNote|null
*/
protected $creditNote = null;
}
然而,当我删除
@映射超级类
注释,它仍按预期工作。
目的是什么
@映射超级类
那么,如果没有超类,它会工作吗?