在我的数据库中,我有许多“项目”,每个项目都有许多与之关联的“设备”。 admin_users与一个或多个项目相关联。我已经注册了一个显示数据库中设备列表的资源。此列表可以按项目过滤。
我想要做的是确保当用户登录并转到设备索引视图时,他/她只能查看属于他的项目的设备。这是通过预过滤索引视图来完成的吗?如果是这样,我该怎么做?有没有更好的方法来解决问题?
提前致谢!
答案 0 :(得分:0)
我不认为过滤器是这样做的。我会在控制器中设置正确的@devices实例var
class DevicesController < ApplicationController
def index
@devices = current_admin_user.devices
end
end
如果你的admin_user不知道这些设备,你可以做这样的事情
class AdminUser < ActiveRecord::Base
has_many :projects
has_many :devices, :through => :projects
end
这对你有用吗?