我有 2 个实体:User
和Avatar
. 每个用户可以从列表中选择一个头像,所以我认为这是一个 One2One 单向关系。问题是当我保存表单时该字段avatar_id
始终NULL
在数据库中。
让我们看看代码:
class User implements UserInterface
{
/**
* @var int $avatarId
*
* @ORM\Column(name="avatar_id", type="integer", nullable=true)
*/
private $avatarId;
/**
* @var Avatar
*
* @ORM\OneToOne(targetEntity="Avatar", cascade={"persist", "remove"})
*/
private $avatar;
}
当我var_dump
在保存之前使用用户对象时,该字段avatarId
包含该Avatar
对象但未保存 id。我做错了什么?
["avatarId":"Test\UserBundle\Entity\User":private]=>
object(Test\UserBundle\Entity\Avatar)#419 (5) {
["id":"Test\User\Bundle\Entity\Avatar":private]=>
int(3)
["imageName":"Test\UserBundle\Entity\Avatar":private]=>
string(14) "death-dark.jpg"
}