我有两张table:
**users** id | name | email | ... ----------- **rooms** user_id | title | status | ... ---------------------------
我如何才能选择所有用户的电子邮件与房间的房间状态列在拉维5?
5ktev3wc1#
你要做的事,必须用“with”和“has”
$user = User::with(['room'])->whereHas('room,function($query){ $q->where('status',1); })->get();
创建用户和房间的模型&用户名房间中的一种关系。上面的那个能解决你的问题吗
csga3l582#
如果您已经定义了 App\User 以及 App\Room 像这样的模特。
App\User
App\Room
class User { /* other codes in your model goes here */ public function rooms(){ return $this->hasMany(App\Room::class); } } class Room { /* other codes in your model goes here */ public function user(){ return $this->belongsTo(App\User::class); } }
您可以检索所有用户的电子邮件,其中的房间状态如下所示
$users= \App\User::with(['rooms' => function($query){ $query->where('status', 'listed'); }])->pluck('email');
2条答案
按热度按时间5ktev3wc1#
你要做的事,必须用“with”和“has”
创建用户和房间的模型&用户名房间中的一种关系。上面的那个能解决你的问题吗
csga3l582#
如果您已经定义了
App\User
以及App\Room
像这样的模特。您可以检索所有用户的电子邮件,其中的房间状态如下所示