我正在尝试在fos Userbundle和我自己的组捆绑之间设置多对多,以便我可以对用户进行分组。这工作正常。我可以设置一个新组,并可以根据需要为该组添加尽可能多的用户。但是,当我想检查用户是否在一个组中时,我得到一个索引连接列错误。我想我不理解manytomany正确使用方法,所以如果你能帮助我明白这一点会很好。
我的实体看起来像:
用户:
class User extends BaseUser
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
protected $usergroups;
//....//
我的群组实体看起来像:
/**
* @ORM\ManyToMany(targetEntity="PrUserBundle\Entity\User", inversedBy="id")
* @ORM\JoinColumn(name="id", referencedColumnName="id")
* @var user
*/
private $user;
//....
/**
* Add user
*
* @param \PrUserBundle\Entity\User $user
* @return Lieferanten
*/
public function addUser(\PrUserBundle\Entity\User $user)
{
$this->user[] = $user;
return $this;
}
/**
* Remove user
*
* @param \PrUserBundle\Entity\User $user
*/
public function removeUser(\PrUserBundle\Entity\User $user)
{
$this->user->removeElement($user);
}
/**
* Get user
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getUser()
{
return $this->user;
}
当我尝试捕获组中的所有用户时,出现错误:
$group=$em->getRepository('PrGroupBundle:Group')->findAll();
var_dump($lfr[0]->getUser()->getId());
我想我很想念如何处理双向多语言。或者我也可以使用多人吗?