在我的Symfony 3项目中,我有一个"用户"和"角色"之间的多对多关系。它以前可以正常工作,但现在出现了错误:
我不知道自己做了什么,可能是因为运行了一个“php bin/console doctrine:mapping:import --force AppBundle xml”命令。
以下是User实体类的片段:
Property AppBundle\Entity\Role::$user does not exist
我不知道自己做了什么,可能是因为运行了一个“php bin/console doctrine:mapping:import --force AppBundle xml”命令。
以下是User实体类的片段:
/**
* @ORM\Table(name="user")
* @ORM\Entity(repositoryClass="AppBundle\Repository\UserRepository")
*/
class User implements AdvancedUserInterface, \Serializable {
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
*
* @ORM\ManyToMany(targetEntity="AppBundle\Entity\Role", cascade = {"persist"})
* @ORM\JoinTable(name="user_role")
*/
private $roles;
如您所见,这与“角色”实体有关系。
另一方面,“角色”实体不包含任何关系信息,根据本文应该可以正常工作:
https://knpuniversity.com/screencast/symfony2-ep3/many-to-many-relationship
它曾经可以工作,现在却不行了,我不知道为什么。
据我所了解,根据Symfony文档,这被称为'单向多对多关系'。对我来说,一切看起来都很好。
AppBundle\Entity\Role
类中有一个名为$user
的公共属性或一个名为getUser()
的公共 getter 方法。 - felipsmartinsphp bin/console doctrine:schema:valid
的输出? - Dominykas55