Symfony 学说自我参考
Symfony doctrine self reference
是否可以在实体中使用自引用字段?像这样:
class Dir
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="integer")
*/
protected $parent; // reference to other Dir
}
普通关联和自引用没有区别
以下可能有效:
class Dir
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="Dir")
*/
private $parent;
}
阅读 Doctrine
here 中有关协会的更多信息。
如果您不打算从您的实体继承,您还应该使用 private
属性。
是否可以在实体中使用自引用字段?像这样:
class Dir
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="integer")
*/
protected $parent; // reference to other Dir
}
普通关联和自引用没有区别
以下可能有效:
class Dir
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="Dir")
*/
private $parent;
}
阅读 Doctrine
here 中有关协会的更多信息。
如果您不打算从您的实体继承,您还应该使用 private
属性。