我有一张桌子
MyModel.objects.annotate(day=RawSQL('date(timestamp)', ())).values('day').annotate(Avg('price')).order_by('day')
其他表格是
user_access_rights
user_id access_right_id
1 1
1 2
1 3
一个用户可以拥有多个访问权限。它可以通过查询轻松完成。但我想知道Eloquent版本。
我写的access_rights
ar_id access_right
1 add
2 update
3 delete
模型
User_access_right
它没有给我正确的结果,也没有从public function rights()
{
return $this->hasMany('App\User_access_right')
}
表中获取access_right
列。有人可以讲解释吗?
答案 0 :(得分:0)
在Users
模型中写下这个:
public function access_rights(){
return $this->belongsToMany('App\access_rights', 'user_access_rights', 'user_id', 'access_right_id');
}
在您的access_rights
模型中添加以下内容:
public function user_rights(){
return $this->belongsToMany('App\User', 'user_access_rights', 'access_right_id', 'user_id');
}
然后你可以像这样查询:
获取用户权限:Auth :: user() - > access_rights() - > get()