0

我是 rails_admin gem 的新手。我想让:stylerails_admin 中的字段像选项的下拉列表一样,而不是像普通的输入字段。这是我的迁移:

    class CreatePhones < ActiveRecord::Migration
      def change
         create_table :phones do |t|
            t.string :audio
            t.string :video
            t.string :style

            t.timestamps
         end
      end
    end

这是我的 Phone.rb 模型:

    class Phone < ActiveRecord::Base
        def style_enum
            ["Free", "Basic", "Advanced", "Super Platinum"] 
        end
    end

我在文档手册中的 railsadmin 中阅读了有关枚举和下拉列表的信息,但似乎没有任何效果。

我收到此错误:

感谢您的关注 :)

4

2 回答 2

2

您可以尝试在您的手机模型中添加此块:

class Phone < ActiveRecord::Base
  rails_admin do
    field :style, :enum do
      enum do
        %w(a b c d)
      end
    end
  end
end
于 2013-11-13T21:19:38.267 回答
0

我通常使用https://github.com/brainspec/enumerize

class Phone < ActiveRecord::Base
...
  extend Enumerize
  enumerize :style, in: ['style1', 'style']
...

这将使用这些值创建一个 RA 下拉列表并强制枚举。

当您有更多动态限制值时,这样做field :style, :enum do很有用。您可以执行bindings[:object]并查询 DB 的值。

于 2016-01-08T18:31:51.753 回答