如何自定义ActiveAdmin中ruby-on-rails的过滤器下拉列表名称?

更新于
2026-10-03 21:42:19
0阅读来源:SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计272个文字,预计阅读时间需要2分钟。

针对用户模型,我有一个过滤器来检查用户的预订状态,状态由整数(0、1或2)表示。在User ActiveAdmin索引页面上,我使用了以下代码实现过滤器:

rubyfilter :booking_status, as: :select

但这样做会导致下拉选择框。

对于用户模型,我有一个过滤器来检查用户的预订状态,该状态由整数值(0,1或2)表示.

User ActiveAdmin索引页面上的过滤器使用以下代码实现:

filter :booking_status, as: :select

但是,这会导致下拉选项为0​​,1或2.

如果管理员用户从下拉列表中选择它们,我希望自己可以将其命名为“不完整”,“待定”和“已确认”.

有没有办法这样做而不改变在模型中表示booking_status的方式?

假设booking_status是模型中的枚举字段,您可以使用:

filter:booking_status,as :: select,collection:ModelName.booking_statuses

如果booking_status不是枚举字段,则可以将常规哈希传递给集合选项,例如:

filter:booking_status,as :: select,collection:{‘Incomplete’=> 0,’待定’=> 1,’完成’=> 2}

本文共计272个文字,预计阅读时间需要2分钟。

针对用户模型,我有一个过滤器来检查用户的预订状态,状态由整数(0、1或2)表示。在User ActiveAdmin索引页面上,我使用了以下代码实现过滤器:

rubyfilter :booking_status, as: :select

但这样做会导致下拉选择框。

对于用户模型,我有一个过滤器来检查用户的预订状态,该状态由整数值(0,1或2)表示.

User ActiveAdmin索引页面上的过滤器使用以下代码实现:

filter :booking_status, as: :select

但是,这会导致下拉选项为0​​,1或2.

如果管理员用户从下拉列表中选择它们,我希望自己可以将其命名为“不完整”,“待定”和“已确认”.

有没有办法这样做而不改变在模型中表示booking_status的方式?

假设booking_status是模型中的枚举字段,您可以使用:

filter:booking_status,as :: select,collection:ModelName.booking_statuses

如果booking_status不是枚举字段,则可以将常规哈希传递给集合选项,例如:

filter:booking_status,as :: select,collection:{‘Incomplete’=> 0,’待定’=> 1,’完成’=> 2}