Doctrine2上简单继承的注释

时间:2018-04-02 15:47:37

标签: php laravel doctrine-orm orm

你能帮我在Doctrine2上进行简单的继承吗?

我为所有用户提供基本课程:

/**
 * Class User
 *
 * @ORM\Entity
 * @ORM\Table(name="users")
 * @InheritanceType("SINGLE_TABLE")
 */
class User
{
    /**
     * @ORM\Id()
     * @ORM\Column(name="id", type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     * @var int
     */
    private $_id;

    /**
     * @ORM\Column(name="email", type="string")
     * @var int
     */
    private $_email;

    /**
     * @ORM\Column(name="name", type="string")
     * @var int
     */
    private $_name;

    /**
     * @ORM\Column(name="password", type="string")
     * @var int
     */
    private $_password;

    ...
}

我有孩子班:

/**
 * Class Parent
 *
 * @ORM\Entity
 * @ORM\Table(name="parents")
 */
class Parent extends User
{    
    /**
     * @ORM\Id()
     * @ORM\Column(name="id", type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     * @var int
     */
    private $_id;

    /**
     * @ORM\Column(name="user_id", type="integer")
     * @var int
     */
    private $_user_id;

    /**
     * @ORM\Column(name="address", type="string")
     * @var int
     */
    private $_address;

    ...
}

保存Parent.user_id后如何插入User? 所有的注释都是正确的吗?

我使用laravel-doctrine并捕获下一个异常: 文件映射驱动程序必须具有有效的目录路径,但是给定的路径[/ var / www / app / Entities]似乎不正确!

0 个答案:

没有答案