2015-08-14 4 views
0

У меня есть разработчик, комментарий и отношения. Многие комментарии к одному разработчику. И мне нужна форма, когда я вижу весь комментарий для разработчика и редактирую - добавляю, удаляю в БД. Каковы пути решения этой проблемыSymfony ManyToOne Form add, delete in DB

объект Комментарий:

class Comments 
{ 
    /** 
    * @var integer 
    * 
    * @ORM\Column(name="id", type="integer") 
    * @ORM\Id 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 

    /** 
    * @ORM\ManyToOne(targetEntity="Developer", inversedBy="comments") 
    * @ORM\JoinColumn(name="talent_id", nullable = true, referencedColumnName="id") 
    * */ 
    protected $talent; 

    /** 
    * @var string 
    * 
    * @ORM\Column(name="added_by", type="string", length=10, nullable=true) 
    */ 
    private $added_by; 

    /** 
    * @var string 
    * 
    * @ORM\Column(name="comment", type="string", length=10, nullable=true) 
    */ 
    private $comment; 

сущность Разработчик:

class Developer extends CustomUser 
{ 
    /** 
    * @var integer 
    * 
    * @ORM\Column(name="id", type="integer") 
    * @ORM\Id 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 
    ///// 
    /** 
    * @ORM\OneToMany(targetEntity="Comments", mappedBy="talent", cascade={"persist", "remove"}) 
    */ 
    protected $comments; 

Может нужна форма в форме, но как это сделать?

ответ

0
class Comments 
{ 
.... 
/** 
* 
*@ORM\ManyToOne(targetEntity="Developer", inversedBy="developer_to_comments") 
* @ORM\JoinColumn(name="developer_to_comments_id", referencedColumnName="id", nullable=false) 
* 
*/ 
private $comments_to_developer; 
... 
} 

И класс Разработчик

class Developer extends CustomUser 
{ 
.... 
/** 
* 
* @var ArrayCollection 
* @ORM\OneToMany(targetEntity="Comments", mappedBy="comments_to_developer", cascade={"remove"}) 
*/ 
private $developer_to_comments; 

public function __construct() 
{ 
    $this->developer_to_comments = new ArrayCollection(); 
} 
.... 
} 

И не забудьте use Doctrine\Common\Collections\ArrayCollection