从多对多关系中获取记录在 Phalcon 中无法正常工作
Fetching records from Many to Many relationship does not work as expected in Phalcon
我已经根据他们提供的文档创建了 phalcon 模型和关系,但是在尝试获取多对多关系中的相关记录时出现错误 "Notice: Undefined property: Phalcon\Mvc\Model\Resultset\Simple::$GroupsMembers in /var/www/html/uno/apps/webservice/controllers/UserController.php on line 245"。
我有 3 个表用户、组和 group_members。 group_members 包含组的关系并且 users.I 想要获取成员的所有订阅组因此我在 UserController 中使用了以下语句:
$user = Users::find('id = '.$user_id);
$subscribed_groups = $user->groupsMembers;
foreach($groupMembers 作为 $groupMember){
echo $groupMember->groups->title;
}
报错如上
请访问下面的 link 以查看我的表格、模型和控制器。
谢谢。
您使用了别名 GroupsMembers,但随后将其称为 $user->groupsMembers,这导致了未定义的 属性 通知。
将代码调整为
$subscribed_groups = $user->GroupsMembers;
它应该可以工作。
谢谢 Calin Rada (http://forum.phalconphp.com/user/283/calinrada) 的回答。
正确答案是:
find() 方法是 returning Phalcon\Mvc\Model\Resultset\Simple 的一个实例,但是 findFirst() 将 return 您的对象的一个实例(在您的情况下是 User)。
我已经根据他们提供的文档创建了 phalcon 模型和关系,但是在尝试获取多对多关系中的相关记录时出现错误 "Notice: Undefined property: Phalcon\Mvc\Model\Resultset\Simple::$GroupsMembers in /var/www/html/uno/apps/webservice/controllers/UserController.php on line 245"。
我有 3 个表用户、组和 group_members。 group_members 包含组的关系并且 users.I 想要获取成员的所有订阅组因此我在 UserController 中使用了以下语句:
$user = Users::find('id = '.$user_id); $subscribed_groups = $user->groupsMembers; foreach($groupMembers 作为 $groupMember){ echo $groupMember->groups->title; }
报错如上
请访问下面的 link 以查看我的表格、模型和控制器。
谢谢。
您使用了别名 GroupsMembers,但随后将其称为 $user->groupsMembers,这导致了未定义的 属性 通知。
将代码调整为
$subscribed_groups = $user->GroupsMembers;
它应该可以工作。
谢谢 Calin Rada (http://forum.phalconphp.com/user/283/calinrada) 的回答。
正确答案是:
find() 方法是 returning Phalcon\Mvc\Model\Resultset\Simple 的一个实例,但是 findFirst() 将 return 您的对象的一个实例(在您的情况下是 User)。