我正在尝试在轨道上创建红宝石预订系统,我希望学生预订一名教练。我使用了设计并创建了单独的模型,教师和学生。当学生登录后,他们可以选择列出的教师,然后按“预约课程”。他们的ID都转移到课程新表格。
我遇到两个问题,即将所选教师ID和已登录身份的学生转移到课程新页面的按钮,以便学生预订课程时间和日期。
讲师#索引
<% @instructors.each do |instructor| %>
<%=instructor.id%> : <%= instructor.email %>
<%#= button_to 'Book a lesson', new_lesson_path(instructor_id: instructor) %>
<%= link_to 'Book a Lesson', {controller: :lesson, :action => :new, :instructor_id => @instructor.id} %>
<% end %>
课程控制器
# GET /lessons/new
def new
# @lesson = Lesson.new
@instructor = Instructor.find(params[:instructor_id])
@lesson = Lesson.new(student_id: Student.find(session[:student_id]).id)
@lesson.instructor_id = @instructor.id
end
课程新的
<%= form_for(@lesson) do |f| %>
<div class="main-title"> New Lesson for "<%= @lesson.instructor.email %> "</div>
<%= f.hidden_field :instructor_id %>
<%= f.hidden_field :student_id %>
<div class="field">
<%= f.label :lesson_date %><br>
<%= f.date_select :lesson_date %>
</div>
<div class="field">
<%= f.label :lesson_start_time %><br>
<%= f.time_select :lesson_start_time %>
</div>
<div class="field">
<%= f.label :lesson_end_time %><br>
<%= f.time_select :lesson_end_time %>
</div>
<div class="actions">
<%= f.submit "Add a lesson" %>
</div>
<% end %>