如何以原始格式而不是以集合格式返回数据库表中的值?

时间:2018-06-15 07:45:05

标签: eloquent

所以,我在Laravel为我的班级创建了一个项目,其他用户会通知用户他们正在关注,但我发现很难查询数据。< / p>

这是我的代码:

use App\followus;
  

块引用

$follow=followus::select('followerid')->where('followingid',auth()->user()- 
 >id)->get();

$followers=User::where('id',$follow)->get();

$follow作为收藏集返回,导致$followers返回

enter image description here

当我将first()添加到$follow时,例如:

$follow=followus::select('followerid')->where('followingid',auth()->user()->id)->first()->followerid;

它返回原始值,然后工作,但在这种情况下,我只能通知整个列表中的单个用户,我不想要。

有人可以帮我解决这个问题,因为我对mysql不是很熟悉。

1 个答案:

答案 0 :(得分:0)

为了获得 followerid 值的集合,您需要使用 pluck()方法而不是 get()

$followerIds=followus::where('followingid',auth()->user()->id)->pluck('followerid');

为了稍后按ID列表进行过滤,您需要使用 whereIn()而不是 where()

$followers=User::whereIn('id',$followerIds)->get();