我正在尝试修改我的用户类 (FOS_UserBundle)。我有一个单独的公司表,当创建用户时,我希望它与其中一家公司相关联。最终我将不得不发现在公司表中创建条目时如何自动创建用户,但现在我只是尝试提供测试数据。
/**
* @ORM\Entity
* @ORM\Table(name="fos_user")
*/
class User extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var object BizTV\BackendBundle\Entity\company
*
* @ORM\ManyToOne(targetEntity="BizTV\BackendBundle\Entity\company")
* @ORM\JoinColumn(name="company", referencedColumnName="id")
*/
protected $company;
在我的构造中,我尝试设置
$this->company = 1;
但这行不通,因为它需要一个对象,所以我实例化了公司对象并用虚拟数据填充它......
$dummy = new company;
$dummy->setActive(true);
$dummy->setCompanyName('myCompany');
$dummy->setId(1);
$this->company = $dummy;
然后我收到一条关于找到新实体的错误消息......
通过关系“BizTV\UserBundle\Entity\User#company”找到了一个新实体,该关系未配置为对实体进行级联持久操作:BizTV\BackendBundle\Entity\company@0000000018a5279000000000049c7b23。显式持久化新实体或在关系上配置级联持久化操作。如果您无法找出导致问题的实体,请执行 'BizTV\BackendBundle\Entity\company#__toString()' 以获得线索。