如何在活动管理员中使用货币过滤器?
How to use Money filter in active admin?
我使用 money-rails gem 作为货币价值。我想在这个领域有过滤器。存储在 DB 中的值以美分保存,但过滤器仅应用于实际值。
您可以为此使用自定义跑步者。
# in your model
ransacker :price_money, formatter: proc { |v| v.to_i * 100 } do |parent|
parent.table[:name]
end
# in your admin file
filter :price_money
使用 _r
而不是 _i
来保留您的美分,否则它会四舍五入。与 Timo Schilling 的 post 答案相同,但稍作调整。
# in your model
ransacker :price_money, formatter: proc { |v| v.to_r * 100 } do |parent|
parent.table[:name]
end
# in your admin file
filter :price_money
我使用 money-rails gem 作为货币价值。我想在这个领域有过滤器。存储在 DB 中的值以美分保存,但过滤器仅应用于实际值。
您可以为此使用自定义跑步者。
# in your model
ransacker :price_money, formatter: proc { |v| v.to_i * 100 } do |parent|
parent.table[:name]
end
# in your admin file
filter :price_money
使用 _r
而不是 _i
来保留您的美分,否则它会四舍五入。与 Timo Schilling 的 post 答案相同,但稍作调整。
# in your model
ransacker :price_money, formatter: proc { |v| v.to_r * 100 } do |parent|
parent.table[:name]
end
# in your admin file
filter :price_money