如何获取相关记录以在活动管理员中显示?

时间:2019-01-26 20:28:37

标签: ruby-on-rails rails-activerecord activeadmin has-and-belongs-to-many

我有一个注册应用程序,它记录一个Participant模型,该模型有两个挂起的模型-Student_DetailVolunteer_DetailParticipanthas_one中的Student_Detail Volunteer_Detail

存在第三种模型GroupGroup记录哪些参与者彼此匹配。由于参与者可能涉及多个Group,而一个Group可能涉及多个Participant,因此我认为has_and_belongs_to_manyParticipant的最佳关联,并且Group

存在GroupParticipant的联接表

我是Rails的新手,并且我使用活动管理员来管理该应用程序。

登录后,我可以看到作为资源生成的每个模型,但是我希望能够在查看{{1}时显示每个参与者的相关详细信息(学生/志愿者/小组) } 标签。当前,它仅显示仅适用于该特定模型的属性,而不适用于任何关联的模型。

这是我对模型Participant的active_admin资源代码:

Participant

我希望能够在Active Admin中查看与 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 表中某个条目关联的所有属性。目前,我只看到直接来自该模型的属性(:first_name,:last_name,:gender,:email,:birthdate,:phone,:street_name,:city,:state,:zip,:role)

1 个答案:

答案 0 :(得分:1)

让我尝试猜测,您需要显示关联属性

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