하나의 자기 참조 관계를 저장하는 데 문제가 있습니다. 부모와 자식 모두 데이터베이스에 제대로 저장되지만, 어린이에게는 parent_id null이 표시됩니다. . 나는 교리 예 ...하지만 생각Doctrine 2 - 1 대 다수의 자체 참조 관계를 저장할 수 없습니다.
namespace CD\Entity;
/**
* @Entity
*/
class Category {
/**
* @Id
* @Column(type="integer")
* @GeneratedValue(strategy="IDENTITY")
*/
private $id;
/** @Column(type="string",length=50) */
private $name;
/**
* @OneToMany(targetEntity="Category", mappedBy="parent",cascade={"persist"})
*/
private $children;
/**
* @ManyToOne(targetEntity="Category", inversedBy="children")
* @JoinColumn(name="parent_id", referencedColumnName="id")
*/
private $parent;
// setters and getters ...
}
여기 내 컨트롤러 folloed : 정말 뭘 메신저 몰라요
public function insertAction()
{
$cm = new CD\Entity\Category();
$cc = new CD\Entity\Category();
$cm->name = 'mainCat';
$cc->name = 'childCat';
$cm->children = array($cc);
$this->_em->persist($cm);
$this->_em->flush();
}
을 잘못