繁体   English   中英

与FOSUserBundle的ManyToMany关系

[英]ManyToMany doctrine relation with FOSUserBundle

我想与两个实体建立ManyToMany关系:

  • 用户(与FOSUserBundle一起使用)
  • Categorie

目前,我正在“ MyNamespace / Userbundle / Entity / User.php”中执行此操作:

/**
 * @ORM\ManyToMany(targetEntity="\MyNamespace\WebsiteBundle\Entity\Categorie", inversedBy="users")
 * @ORM\JoinTable(name="user_has_categories")
 */
private $categories;

public function __construct()
{
    parent::__construct();
    $this->categories = new \Doctrine\Common\Collections\ArrayCollection();
}

而这在“ MyNameSpace / WebsiteBundle / Entity / Categorie.php”中:

/**
 * @ORM\ManyToMany(targetEntity="\MyNameSpace\UserBundle\Entity\User", mappedBy="categories")
 */
 private $users;

 public function __construct()
 {
   $this->users = new \Doctrine\Common\Collections\ArrayCollection();
 }

当我运行doctrine命令以使用关系创建表时,一切正常。

但是当我做一个var_dump($this->getUser()); 在我的默认控制器(例如)中,我有一个死循环,该死循环使浏览器崩溃。 当我删除用户实体中的关系时,不再出现此效果...

那会知道这个问题可能在哪里?

我在ubuntu上打开PHP 5.4.9

谢谢 :)

采用

学说\\ COMMON \\的Util \\调试::转储()

代替var_dump

-更新-

为什么Debug :: dump()有效但var_dump无效:

Doctrine \\ Common \\ Util \\ Debug :: dump()接受第二个参数maxDepth (默认值为2)以将嵌套引用限制为两个级别。 您可以根据需要传递此值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM