#ruby-on-rails #ruby-on-rails-3 #ruby-on-rails-3.1 #activeadmin
#ruby-on-rails #ruby-on-rails-3 #ruby-on-rails-3.1 #activeadmin
Вопрос:
У меня есть вложенная форма categories
для stores
ресурса. Они имеют отношение has_and_belongs_to_many.
Когда я создаю вложенную форму, я получаю следующее в форме stores:
Но что я действительно хочу, так это контрольный список, подобный этому:
Есть идеи?
Ответ №1:
Оказывается, что после создания этих отношений между моделями мне не нужно выполнять f.has_many
цикл в ресурсе activeadmin. Вместо этого мне просто нужно было следующее, чтобы заставить это работать:
f.input :categories, :as => :check_boxes
Это автоматически выберет категории и проверит те, которые установлены по умолчанию (а также обработает любые изменения, внесенные в нее).
Комментарии:
1. Возможно, вам потребуется добавить
:category_ids
вattr_accesible
модель.2. Теперь все это может обрабатываться по-другому в Rails 4
3. В Rails 4 необходимо включить
permit_params category_ids: []
в ActiveAdmin ресурс.4. по умолчанию используется имя для отображения в виде флажка, но я хочу ввести другое имя поля вместо name как я могу это сделать? Если я добавлю туда опцию collection .. при повторном редактировании мне нужно выполнить код для автоматического выбора сохраненных. Кто-нибудь может сказать мне, как это сделать?
5. Извините, я только что исправил, используя опцию member_label в formtastic