我正在像Twitter一样学习Laravel。
我想获取我关注的Tweets的信息,包括带有1个查询的Tweets。
这是关系的模型。 请检查,我只接受有关关系的信息。
请给我建议。
关注模型 类Follow扩展了模型{
Public function user(){
return $this->belongsTo(User::class, "followed_user_id", "id");
}}
推文模型
class Tweet extends Model {
Public function user(){
return $this->belongsTo(User::class, "user_id");
}}
用户模型
class User extends Model{
Public function tweet(){
return $this->hasMany(Tweet::class);
}
Public function followUsers(){
return $this->hasMany(Follow::class, "follow_user_id");
}
Public function followedUsers(){
return $this->hasMany(Follow::class, "followed_user_id");
}}
答案 0 :(得分:0)
如果您想让所有用户获得他的所有推文,只需使用
User::with('tweets')->get();
如果您想在单个查询中获得单个用户的推文,则可以
User::with(['tweets' => function($query) use ($userId){
$query->where('user_id', $userId);
}])->first()