Laravel 有很多不在的地方

Laravel 有很多不在的地方,laravel,has-many,laravel-eloquent,where-in,Laravel,Has Many,Laravel Eloquent,Where In,我正在通过模型在laravel中创建一个查询,以过滤出组中已有/未存在的内容 型号: 团体 团体成员 使用者 适当的过滤器: function members() Groups->hasMany(GroupMembers) 努力实现这一目标: Users->whereNotIn(Groups->members()) 这就是问题中的代码行,我认为其余部分是如何构建的,这是无关紧要的: $groups = Groups::find($request['id']); //

我正在通过模型在laravel中创建一个查询,以过滤出组中已有/未存在的内容

型号:

  • 团体
  • 团体成员
  • 使用者
适当的过滤器:

function members()
Groups->hasMany(GroupMembers)
努力实现这一目标:

Users->whereNotIn(Groups->members())
这就是问题中的代码行,我认为其余部分是如何构建的,这是无关紧要的:

$groups = Groups::find($request['id']);
//        die($groups->members);
    return view('admin.groups.add_member', 
           ['group' => $groups, 
            'users' => User::whereNotIn('id', $groups->members->user)]);
die()命令成功返回成员的行。return语句groups->members返回[1,1,1]的数组(这是组id,其中有3个组成员)

我相信这件事很简单,但如果能得到一些帮助,我们将不胜感激

尝试类似的操作(假设该列名为
user\u id
):

尝试类似的操作(假设列名为
user\u id
):


这比我刚刚写的解决方案要好。我把勇气全忘了<代码>返回视图('admin.groups.add_member',['group'=>$groups','users'=>User::whereNotIn('id',$groups->members->pull('member_id'))->get())我使用的方法是在Groups模型中创建一个新函数,复制原始members函数并添加->选择('member_id')。。。。同样的事情,但更多的代码!这比我刚刚写的解决方案要好。我把勇气全忘了<代码>返回视图('admin.groups.add_member',['group'=>$groups','users'=>User::whereNotIn('id',$groups->members->pull('member_id'))->get())我使用的方法是在Groups模型中创建一个新函数,复制原始members函数并添加->选择('member_id')。。。。同样的事情,但更多的代码!
User::whereNotIn('id', $groups->members->pluck('user_id'))->get()