我知道我很接近,但我被困住了。
这些是我正在使用的三个模型:AttendanceSheet、Attendance 和 Child。
AttendanceSheet
has_many :attendances, :dependent => :destroy
accepts_nested_attributes_for :attendances
belongs_to :course
Child
has_many :attendances
Attendance
belongs_to :attendance_sheet
belongs_to :child
所以加入模型是出勤。我正在尝试创建一个包含特定课程所有学生列表的出勤表,然后使用复选框标记他们是否参加。像这样...
Attendance Sheet
Course: Biology
Date: _____________
Michael Scott [] Notes: sick
Jim Halpert [] Notes: ____
Dwight Schrute [] Notes: ____
所以出勤表有以下列:
child_id
attended (boolean) to check if the student attended course or not
notes
我遇到问题的部分是想出某种循环来显示属于该班级的所有学生,并为每个学生提供参加的字段和注释。
这就是我所拥有的...
_form.html.erb
<%= simple_form_for @attendance_sheet, :html => { :class => 'form-horizontal' } do |f| %>
<h2>Course: <%= @course.name %></h2>
<div class="form-inputs">
<%= f.input :attendance_on, :as => :string, :hint => 'YYYY-MM-DD', :input_html => {:class => :datepicker, :value => Date.today} %>
</div>
<% @course.children.each do |child| %>
*** trouble here ***
<%= check_box_tag %> <%= child.full_name %><br />
<% end %>
<div class="form-actions">
<%= f.button :submit %>
</div>
<% end %>
出勤表控制器.rb
def new
@attendance_sheet = AttendanceSheet.new
@course = Course.find(params[:course_id])
respond_to do |format|
format.html
end
end