在activeadmin控制器中,我想从索引中排除所有名为is_private
的布尔字段设置为true
的照片。
我不知道怎么做。
下面的代码让我接近我想要的:
ActiveAdmin.register Photo do
scope ("public"){ |scope| scope.where(is_private: false) }
这就创建了一个“公共”按钮,我可以按它来过滤掉所有的私人照片。但是,我希望此筛选自动进行。我不想出现一个按钮,我希望默认情况下隐藏所有私人照片(对于某些用户)。
我如何在这个布尔字段上确定我的照片的范围(:is_private)?
最佳答案
你想要的是设置默认的过滤器,所以这里是你需要在activeadmin控制器中做的事情
controller do
before_filter only: :index do
params[:q] = {is_private_eq: 0} if params[:commit].blank?
# or this might work for you
# params[:q] = {is_private: 0} if params[:commit].blank?
end
end
关于ruby-on-rails - ActiveAdmin:在 bool 字段上创建范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33314101/