18

我有一个为其rails_admin生成文本字段的字段,但我希望它改用<select>标签。我在初始化程序中自定义了这样的字段:

RailsAdmin.config do |config|
  config.model User do
    update do
      field :state do
        partial "user_state_partial"
      end
    end
  end
end

我已经测试过了,它可以工作。问题是,通过这样做(我也尝试使用编辑块),剩下的唯一字段是我正在自定义的字段。有没有办法告诉 rails_admin 只假设其他字段的默认值?

4

4 回答 4

21

更好(更短)的解决方案是使用“配置”语法而不是“字段”。通过使用 configure,rails_admin 将为所有其他值使用默认值。

因此,例如,使用以下内容:

RailsAdmin.config do |config|
  config.model User do
    update do
      configure :state do
        partial "user_state_partial"
      end
    end
  end
end

...将允许 RailsAdmin 对 :state 使用指定的部分,但它将对所有其他字段使用默认值。

可以在以下位置找到更多信息:Rails Admin wiki

于 2012-03-06T15:02:18.670 回答
2

定义一个字段后,您必须定义要使用的所有字段。默认为所有字段。

RailsAdmin.config do |config|
  config.model User do
    update do
      field :name
      field :surname
      field :state do
        partial "user_state_partial"
      end
    end
  end
end
于 2011-05-20T12:44:29.787 回答
2

当前的文档说您可以,如下所示:

field :name do
  # snipped specific configuration for name attribute
end

include_all_fields # all other default fields will be added after, conveniently
exclude_fields :created_at # but you still can remove fields

...但它仍然会删除关联子表单。(您可以使用“field :association_id”(不是“field :association”)添加belongs_to 项目,但我不确定如何添加has_* 子表单。

于 2011-07-20T01:20:06.120 回答
1

我通常会做 include_all_fields,然后为我的字段自定义配置,然后添加 exclude_fields(用于 id 和时间戳等字段)。

于 2016-01-13T01:09:36.197 回答