Как настроить только поле в rails_admin?
У меня есть поле, для которого 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 просто принять значения по умолчанию для других полей?
Ответы
Ответ 1
Как только вы определили одно поле, вы должны определить все поля, которые хотите использовать.
По умолчанию все поля.
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
Ответ 2
Лучшее (и более короткое) решение заключается в использовании синтаксиса "configure" вместо "поля".
Используя 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
Ответ 3
Текущие документы говорят, что вы можете:
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
... но он все равно удаляет ассоциативные подформы. (Вы можете добавить обратно принадлежность к элементам с полем: association_id (не "поле: ассоциация" ), но я не уверен, как добавить back_s_forms.
Ответ 4
Я обычно делаю include_all_fields, затем настраиваемую конфигурацию для своего поля, а затем добавляю exclude_fields (для полей, таких как id и timestamps).