可以预先筛选Activeadmin索引视图吗



在我的数据库中,我有许多"项目",每个项目都有许多关联的"设备"。admin_user与一个或多个项目关联。我已经注册了一个资源,该资源显示数据库中的设备列表。此列表可以按项目筛选。

我想做的是确保当用户登录并进入设备索引视图时,他/她只能查看属于他的项目的设备。这是通过预过滤索引视图来完成的吗?如果是,我该怎么做?有没有更好的方法来解决这个问题?

提前感谢!

我不认为过滤器适合这样做。我会在控制器中设置正确的@设备实例var

class DevicesController < ApplicationController
  def index
    @devices = current_admin_user.devices
  end
end

如果你的管理员用户不知道这些设备,你可以做一些类似的事情

class AdminUser < ActiveRecord::Base
  has_many :projects
  has_many :devices, :through => :projects
end

这对你有用吗?

最新更新