2016-08-20 5 views
1

Я хочу создать FAQ систему, где администратор способен создать еще одну справку в FAQ на SubFAQ в FAQ и так далее ..доктрина автореферентной ассоциация Mapping (Symfony)

Я знаю, что я нужно самосознание, но как я могу это решить?

My Entity faq.php выглядит следующим образом:

/** 
    * @OneToMany(targetEntity="Faq", mappedBy="parent") 
    */ 
private $children; 

/** 
    * @ManyToOne(targetEntity="Faq", inversedBy="children") 
* @JoinColumn(name="parent_id", referencedColumnName="id") 
    */ 
private $parent; 

public function __construct() { 
    $this->children = new \Doctrine\Common\Collections\ArrayCollection(); 
} 

То, что я не понимаю, это inversedBy и как использовать все это.

спасибо.

+0

http://stackoverflow.com/questions/12493865/what-is-the-difference-between-inversedby-and-mappedby#12495834 может помочь. –

+0

Также http://doctrine-orm.readthedocs.io/projects/doctrine-orm/en/latest/reference/association-mapping.html#association-mapping. –

ответ

1

Вам нужно добавить некоторые методы для добавления SubFAQ и вернуть все SubFAQ.

/** 
* @param Faq $child 
* 
* @return Faq 
*/ 
public function addSubFAQ($child) 
{ 
    $this->children[] = $child; 

    return $this; 
} 

/** 
* @return ArrayCollection 
*/ 
public function getSubFAQs() 
{ 
    return $this->children; 
} 
Смежные вопросы