学生模特:
ping
课程模型:
class Student < ActiveRecord::Base
has_many :courses
end
如何通过学生创建课程,以便获得[课程编号:1,student_id:1]。我尝试过以下方式,但它给了我student_id nil。
课程控制器:
class Course < ActiveRecord::Base
belongs_to :student
end
答案 0 :(得分:0)
你的解决方案有几个小问题,但是如果我很清楚你想要做什么,这基本上就是在courses_controller的某个动作中创建与学生相关的Course对象,你需要做的就是添加那些行吃了courses_controller动作:
Courses_controller:
class CoursesController < ApplicationController
...
def new
@student = Student.find(params[:student_id])
@course = Course.new student_id: @student.id
end
def create
@course = Course.new(params[:course])
@course.save
end
...
end
在您的视图中,您正在调用new_course_path,您应该传递:student_id值,如下例所示:
new_course_path(student_id: @student.id)