0
저는 교사를 만들 수있는 양식이 있으며,이 양식에는 그들이 가르 칠 수있는 과목을 등록하고 관련 경험이있는 테이블이 있습니다.레일 폼은 같은 인스턴스에서 많은 행을 전송합니다.
하지만 모델, 컨트롤러 및보기에서이를 어떻게하는지 알지 못합니다. 내 선생님 양식에 중첩 된 필드를 추가하고 모델에서 nested_attributes를 사용하고 컨트롤러에서 허용하기 때문입니다. 하지만 난 ... 난 기능을 컨트롤러에서
모델
class Tutor < User
has_many :tutor_subjects
accepts_nested_attributes_for :tutor_subjects
end
.. 그것을 할 방법을 알고
def create
@tutor = Tutor.new(tutor_params)
@tutor.save
end
def tutor_params
params.require(:tutor).permit(:email,
:first_name,
:last_name,
:gender,
:password,
tutor_subjects_attributes: [])
end
end
그리고보기를 해달라고
= simple_form_for [:admin, @tutor] do |f|
= f.error_notification
.col-md-8.col-sm-12
.form-inputs
= f.input :email
= f.input :password
= f.input :first_name
= f.input :last_name
= f.input :gender, collection: {Male: 1, Female: 2}, include_blank: "--Select gender--"
%h2.well.well-sm Subjects
%table.table
%thead
%tr
%th Subject
%th Experience
%th Options
%tbody#subjects
= f.simple_fields_for :tutor_subjects_attributes do |s|
%tr.subject0
%td
= s.input :subject_id, collection: Subject.all, label: false, include_blank: "--Select subject--", input_html: { id: "tutor_subjects_attributes_0_subject_id", name: 'tutor[tutor_subjects_attributes][0][subject_id]', class: "subject" }
%td
= s.input :experience, as: :text, label: false, input_html: { placeholder: "Type your experience", name: 'tutor[tutor_subjects_attributes][0][experience]', id: "tutor_subjects_attributes_0_experience" }
%td.options
= link_to :add_subject, "#", id: "add_subject", class: "btn btn-small btn-info"
과 같아야입니까? 그것은 강력한 매개 변수 안에'tutor_subjects_attributes'를 가지고 있습니까? – Aleksey
문제는 중첩 모델에 매개 변수를 저장하여 많은 행을 보내지 만 작동하지 않는다는 것입니다. – jacr1614
아래에서 내 대답을 시도 했습니까? – Aleksey