[英]Symfony2 cannot persist column that has a relationship
我有一个董事会实体和一个股份实体。 一个董事会可以拥有许多股份(例如,在一个用户与另一个用户共享的董事会中,一个用户可以)。
董事会实体拥有一家汽车公司。 列称为boardId。 股份实体的名称相同的列会将股份映射到董事会。 这是映射它的代码:
董事会:
/**
* @orm:OneToMany(targetEntity="Shares", mappedBy="boards", cascade={"persist", "remove"})
*/
private $shares;
分享:
/**
* @orm:ManyToOne(targetEntity="Boards", inversedBy="shares")
* @orm:JoinColumns({
* @orm:JoinColumn(name="board_id", referencedColumnName="board_id")
* })
*/
private $boards;
当我这样保留新的共享时:
$share = new Shares();
$share->setMemberIdT($members[0]->getMemberId());
$share->setMemberIdF($id);
$share->setBoardId($boards[0]->getBoardId());
$share->setDateShared();
$share->setReceived(0);
我这样称呼boardId:
$boards = $em->getRepository('PixbellyHomeBundle:Boards')
->findByBoardId($board);
我已经回显了boardId,直到字面上的前一行和id正确为止,但是当我调用persist时,出现此错误:
"response":{"errorInfo":["23000",1048,"Column 'board_id' cannot be null"]}}
我认为这与关系有关,但我尝试了所有一切,没有任何帮助?
您应该执行以下操作:
$share->setBoards($boards);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.