财产" getFollowed"也不是其中一种方法" getFollowed()"," getgetFollowed()" /" isgetFollowed()"

时间:2017-12-18 17:25:13

标签: php symfony

我在用户和图书之间有多对一的关系,在Follow表中,我试图获取与图书相关的用户的对象属性。 Bellow是Followed表中的关系定义

/**
     * @var User
     *
     * @ORM\ManyToOne(targetEntity="AppBundle\Entity\User")
     */
    private $followed;
/**
     * Set followed
     *
     * @param User $followed
     *
     * @return Follow
     */
    public function setFollowed(Users $followed = null)
    {
        $this->followed = $followed;

        return $this;
    }

    /**
     * Get followed
     *
     * @return Users
     */
    public function getFollowed()
    {
        return $this->followed;
    }

以下是我的控制器定义将控件传递给树枝

$em = $this->getDoctrine()->getManager();

        $me = $this->getAuthedUser(1);

        $follows = $em->getRepository("AppBundle:Follow")->findBy(["follower" => $me]);
        $followeds = [];
        foreach ($follows as $follow) {
            $followeds[] = $follow->getFollowed();
        }

        $followables = $em->getRepository("AppBundle:User")->findAll();



        return $this->render("@App/index.html.twig", [
            "me" => $me,
            "followeds" => $followeds, //this
            "followables" => $followables,
        ]);

在我的视图中尝试此操作时,我在这行代码中遇到错误

{% if followed.getFollowed() %} //error at this line of code

这是错误

  

财产" getFollowed"也不是其中一种方法" getFollowed()"," getgetFollowed()" /" isgetFollowed()"或" call()"在课堂上存在且具有公共访问权限" Proxies__CG \ AppBundle \ Entity \ User"。

2 个答案:

答案 0 :(得分:0)

在您看来,没有必要调用getFollowed。 就这样做:{%if follow.followed%}

答案 1 :(得分:0)

您正在getFollowed()对象上调用User方法,但实际的方法实现似乎在Follow类中(如果这是类的名称)从你的第一个代码部分开始。)