Symfony2关系 - OneToOne?

时间:2015-09-16 15:04:08

标签: php mysql symfony doctrine-orm relationship

一开始抱歉我的英语不好,我希望你能理解我。我正在Symfony2中编写一个简单的门户网站,并且需要在使用MySQL的表格之间建立关系,浏览互联网的所有方式,测试并且没有任何结果。下表。

http://i.stack.imgur.com/vR77x.png

http://i.stack.imgur.com/GDXDw.png

现在是的,通过从数据库中获取用户,我想曾经延伸到职业(职业),但连同其名称,甚至是一个选项?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您希望在您的实体之间创建OneToOne关系?!

在玩家实体上:

/**
 * Player
 *
 * @ORM\Table(name="players")
 * @ORM\Entity()
 */
class Player
{
    /**
     * @ORM\OneToOne(targetEntity="Vocation", inversedBy="player")
     * @ORM\JoinColumn(name="vocation", referencedColumnName="id")
     */
    private $vocation;

    ...
}

在Vocation one

/**
 * Vocation
 *
 * @ORM\Table(name="vocations")
 * @ORM\Entity()
 */
class Vocation
{
    /**
     * @ORM\OneToOne(targetEntity="Player", mappedBy="vocation")
     */
    private $player;

    /**
     * @var string
     */
    private $vocationName;

    /**
     * @var integer
     */
    private $id;

    ...
}

这样的东西?

另外(从查看你的表格)你可能想要一个ManyToOne关系而不是OneToOne吗?