【发布时间】:2016-09-21 09:27:55
【问题描述】:
我有一个没有模型的控制器。在这个控制器中,我们正在加载一些其他资源。最重要的是,该应用程序具有多租户功能。
代码如下:
# ability.rb
class Ability
include CanCan::Ability
def initialize(user)
if user.owner?
can :manage, Tool, tenant_id: user.tenant.id
end
end
end
# boxes_controller.rb
class BoxesController < ApplicationController
authorize_resource class: false
def index
tools = Tool.all
end
end
有什么问题?:
比如说,tenant1 的 user1 创建 tool1,tenant2 的 user2 创建 tool2。
问题是,从tenant1,user1可以访问tool2! :(
我写错了吗?请帮忙。
【问题讨论】:
标签: ruby-on-rails multi-tenant cancan cancancan