Php 如何筛选嵌入关系的结果?
我很难理解这个概念 我有一个Php 如何筛选嵌入关系的结果?,php,mongodb,laravel,eloquent,Php,Mongodb,Laravel,Eloquent,我很难理解这个概念 我有一个User类拥有许多OrganizationUser类 MyOrganizationUserclassembedsMany类的通知 在我的代码中,我可以通过执行以下操作返回用户的组织用户: $user = Auth::user(); $user->organizationUsers; return $user; 这将返回myuser对象上的属性organization\u users,该对象是OrganizationUsers的数组 现在,我想返回每个组织用户的
User
类拥有许多OrganizationUser
类
MyOrganizationUser
classembedsMany
类的通知
在我的代码中,我可以通过执行以下操作返回用户
的组织用户
:
$user = Auth::user();
$user->organizationUsers;
return $user;
这将返回myuser
对象上的属性organization\u users
,该对象是OrganizationUsers
的数组
现在,我想返回每个组织用户的通知
首先,我做了以下工作,效果很好:
$user = Auth::user();
$user->organizationUsers;
for ($i = 0; $i < $user->organizationUsers->count(); $i++) {
$user->organizationUsers[$i]->notifications;
}
return $user;
但是,这根本不过滤。我试着做:
for ($i = 0; $i < $user->organizationUsers->count(); $i++) {
$user->organizationUsers[$i]->notifications =
$user->organizationUsers[$i]->notifications->where('resolved', false)->get();
}
它似乎返回的是一个对象的对象,而不是一个对象数组。有什么想法吗
for ($i = 0; $i < $user->organizationUsers->count(); $i++) {
$user->organizationUsers[$i]->notifications =
$user->organizationUsers[$i]->notifications->where('resolved', false)->get();
}
notifications: {
4:
{
_id: "560ab1639a3709120400432e"
created_at: "2015-09-29 15:42:27"
resolved: false
type: "New User Request"
updated_at: "2015-09-29 15:42:27"
}
}