Rails 验证变量数组的包含

Ugo*_*are 1 validation ruby-on-rails ruby-on-rails-4

我正在尝试在整数数组上创建验证器,但该数组可以修改,并且我认为我的验证器包含数组不会重新加载。

这是我之前的验证器

validates :amount, presence: true, inclusion: {in: [25, 50, 75, 100, 150, 200, 250]}, on: :create
Run Code Online (Sandbox Code Playgroud)

但现在管理员可以启用或禁用一定数量

validates :amount, presence: true, inclusion: {in: ApplicationSetting.current.card_amounts }, on: :create
Run Code Online (Sandbox Code Playgroud)

知道如何“重新加载”这个包含数组吗?

ps:如果我在代码中引发重新加载中的数组..

Ugo*_*are 5

用proc解决了

validates :amount, presence: true, inclusion: {in: proc {ApplicationSetting.current.card_amounts} }, on: :create
Run Code Online (Sandbox Code Playgroud)