Как получить связанные записи для отображения в активном администраторе? - PullRequest
0 голосов
/ 26 января 2019

У меня есть приложение для регистрации, которое записывает модель Participant, которая имеет две висящие модели - Student_Detail и Volunteer_Detail. Participant has_one из Student_Detail и Volunteer_Detail.

Есть третья модель, Group. Group записывает, какие участники сопоставляются друг с другом. Поскольку участник может быть вовлечен в более чем один Group, а Group может иметь более одного Participant, я предполагаю, что has_and_belongs_to_many является лучшей ассоциацией для Participant и Group.

Таблица соединений существует для Group и Participant

Я новичок в Rails и использую активного администратора для управления этим приложением.

Когда я вхожу в систему, я вижу каждую модель, сгенерированную мной, как ресурс, но я надеюсь, что смогу показать связанные детали (студент / волонтер / группа) каждого участника при просмотре вкладки Participant , В настоящее время отображаются только атрибуты, которые предназначены только для этой конкретной модели, а не для любых связанных моделей.

Вот мой код ресурса active_admin для модели Participant:

    ActiveAdmin.register Participant do

                            permit_params :first_name, :last_name, :gender, :email, :birthdate, :phone, 
                                              :street_name, :city, :state, :zip, :role, student_details_attributes: [:nationality, :religion, :need_ride, 
                                            :has_spouse, :spouse_name, :english_level, :expectation, :length_of_stay, :exact_length, :volunteer_id, 
                                            :matched, :returned_home, :participant_id], volunteer_details_attributes: [:date, :importance, :story, :questions, :participant_id]


                            end

Я хотел бы иметь возможность просматривать все атрибуты, связанные с записью в таблице Participant, когда я просматриваю ее в Active Admin. В настоящее время я вижу только те атрибуты, которые относятся непосредственно к этой модели (: имя, имя: фамилия, пол, адрес электронной почты, дата рождения, телефон, название улицы, город, штат, почтовый индекс: роль)

1 Ответ

0 голосов
/ 29 января 2019

Позвольте мне попытаться угадать, вам нужно отобразить атрибуты ассоциаций

show do |participant|
  attributes_table do
    row :id
    row :full_name
    attributes_table_for participant.volunteer_detail do
      row :id
      row :volunteer_name
    end
  end
end
...