小编shi*_*sun的帖子

Laravel:对多对多关系添加约束

考虑一下Laravel中这种简单的多对多关系:

class User extends Eloquent {
    public function roles()
    {
        return $this->belongsToMany('Role');
    }
}
Run Code Online (Sandbox Code Playgroud)

class Role extends Eloquent {
    public function users()
    {
        return $this->belongsToMany('User');
    }
}
Run Code Online (Sandbox Code Playgroud)

role_user可以保留user_id和的模式role_id。但是,如果还有其他限制,我们该怎么办?例如,在类似Github的应用中,用户在存储库A中是admin,在存储库B中是常规用户。因此,我们将其添加repository_idrole_user表中,但是当我要查询时,user->roles我想在当前存储库中查找它,因此我一直current_repository_id在会议。我应该在模型中进行哪些更改来做到这一点?


注意:我不想更改使用代码中的任何内容!反正不是在模型声明中放入过滤器逻辑吗?因为我处于大型项目的中间,因此很难更改每种用法。可能吗?

php laravel eloquent laravel-4

1
推荐指数
1
解决办法
1295
查看次数

标签 统计

eloquent ×1

laravel ×1

laravel-4 ×1

php ×1