ActiveAdmin 上的级联自定义过滤器

问题描述 投票:0回答:1

我正在尝试在 ActiveAdmin 上创建级联过滤器,但我不太确定如何进行。

我有三个模型,它们具有连续的belongs_to/has_many关系,例如A 有很多 B,B 有很多 C。

我可以创建如下三个过滤器,它们可以工作,但我想做的是根据 A 中的选择来限制 B 集合。

  filter :b_a_name, :as => :select, :collection => A.map(&:name)
  filter :b_name, :as => :select, :collection => B.map(&:name)
  filter :year

有办法在 ActiveAdmin 上完成此操作吗?

ruby-on-rails activeadmin
1个回答
0
投票

你可以使用 javascript 完成类似的事情,即

  • 收听
    b_a_name
  • 上的更改事件
  • 通过
    b_a_name
    中的选择向端点发出 ajax 请求
  • 在成功回调中返回
  • b_name
     对应选项的 JSON 数组
  • b_name
     的选择选项替换为数组 
    中的选项
© www.soinside.com 2019 - 2024. All rights reserved.