1
我的目标是继承已经继承的表与教条。我有一个抽象的用户类...Symfony2继承自继承的表
<?php
namespace UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use FOS\UserBundle\Model\User as BaseUser;
/**
* @ORM\Entity
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="type", type="string")
* @ORM\DiscriminatorMap({"student" = "Student", "employee" = "Employee", "customer" = "Customer"})
*/
abstract class User extends BaseUser
{
}
...和各种小类(学生,客户,雇员)。像这样:
<?php
namespace UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* UserBundle\Entity\Student
*
* @ORM\Entity
*/
class Student extends User
{
}
在这个设置中,一切都正常工作。现在,其他软件包(被视为单独的模块)应该添加来自子类的列。因此,我喜欢像学生一样继承这些类。但这些不能是抽象的,因为它们被核心系统使用。
有没有可能解决这与教条类表继承?如果不是,您会推荐哪种解决方案?
Thx为答案@ francesco-panina。在我的szenario中,用户确实无法成为(学生和员工)和_系统僵尸工具_我使用API密钥接口......这些接口与任何用户(除关联所有者之外)都是独立的。 我对最终论文的最终解决方法是:根据当前模块动态添加disciminator,并将特定模块用户与使用的子文件合并。它的工作原理......丑陋......地狱...... – binzram
坦白说,大部分时间我都接触现实,我选择的实施方式是最具成本效益的,这远离干净优雅的...如果它适合你,只要它是一个明智的选择,选择任何解决方案并不是件可耻的事。祝你好运! –