Abh*_*ena 6 sql ruby-on-rails mongodb mongoid
嘿,我希望实现像高层建筑或Facebook 一样的权限系统.
这种问题的问题是必须在对象的实例(可见性)上定义权限.在我的脑海中,我可以考虑在每个记录的哈希中保存user_ids或group_ids.这是最好的方法吗?
我正在使用mongodb,以便更容易.虽然我们也可以切换到sql(高层可能与sql一起).
编辑:我最终写了一个与mongoid一起工作的宝石,你可以在这里阅读更多相关信息
@Abhishiv:鉴于此任务,我将实现某种形式的约定来按字段设置访问权限。
给定一个如下所示的对象:
{
name : "me",
user : "me01234",
salary : "100",
address : "123 Nowhere drive"
}
Run Code Online (Sandbox Code Playgroud)
我会通过执行以下操作来添加权限:
{
name : "me",
user : "me01234",
salary : "100",
address : "123 Nowhere drive"
p_salary : [ 'g/accounting', 'g/management', 'u/owner' ]
p_address : [ 'g/accounting', 'g/hr', 'u/me' ]
}
Run Code Online (Sandbox Code Playgroud)
通过这样的约定,您可以维护文档级访问权限。很容易看出如何对这样的事情进行编程。
现在,您通常需要对象和集合本身的访问权限。这使得整个过程更加干燥。对于这样的事情,我只需构建一个“权限”集合,其中包含数据库中每个其他集合的默认权限。
在我的脑海中,我不知道有任何框架可以“开箱即用”。我会查看 Mongoid 和 MongoMapper,看看这种类型的细节是否不适合插件。
| 归档时间: |
|
| 查看次数: |
607 次 |
| 最近记录: |