代码之家  ›  专栏  ›  技术社区  ›  ibradev

如何在其他实体中使用FOS用户ID

  •  0
  • ibradev  · 技术社区  · 8 年前

    我尝试将userid值保存到我的新实体RDV中,当我尝试这样做时:

    $user = $this->getUser()->getId();
    $rdv->setUserid($user);
    

    这是我的RDV实体:

        /**
         * @ORM\ManyToOne(targetEntity="UserBundle\Entity\User", cascade=
           {"persist"})
         */
    private $userid;
    

    我收到以下错误:

    Catchable Fatal Error: Argument 1 passed to CMRBundle\Entity\RDV::setUserid() must be an instance of UserBundle\Entity\User, integer given, called in C:\wamp64\www\No\src\CMRBundle\Controller\AdvertController.php
    

    谢谢你帮我

    1 回复  |  直到 8 年前
        1
  •  2
  •   Alessandro Minoccheri    8 年前

    尝试以下操作:

    $user = $this->getUser();
    $rdv->setUserid($user);
    

    因为需要在关系中添加实体而不是id


    我建议你把你的领域改成 private $user; 所以你可以使用 $rdv->setUser($user); 您的域在哪里更清晰