有人试图重写CanCan ActiverRecordAddtions Mongoid http://github.com/ryanb/cancan/blob/master/lib/cancan/active_record_additions.rb
此致 Alexey Zakharov
答案 0 :(得分:9)
我已经设法让CanCan和Mongoid(版本2)在rails 3 app上很好地协同工作。在这里仍然会遇到一些错误,与权限定义中的条件相关(能力模型)。
我只是将这个要点的内容放入config / initializers中的文件中:
条件哈希值几乎与ActiveRecord相同:
# can only manage own account
can :manage, User, :_id => current_user.id
我还在研究如何使用更高级的Mongoid :: Criteria条件,但是你总是可以使用一个块来处理更复杂的条件:
# can only manage own account
can :eat, Cake do
current_user.jobs.any?{ |job| job.title == 'Peasant'}
end
答案 1 :(得分:-1)
我知道这是一个旧的,但对于那些搜索mongoid和cancancan集成的人,你可以试试官方的mongoid适配器
对于cacancan gem版本> 2.0,有单独的gem cancacan-mongoid
请记住,这个宝石状态是“正在开发中”,但它仍然运行良好并且构建传递