我有一个form_for,可以对以下操作/对象进行操作:
def new
@student = Students.new
end
此外,从以下路径调用表单
schools/4/students/new
将学校ID(本例中为4)保存到数据库中的新学生记录的最佳方法是什么?我无法用它预加载@student对象,因为它在下一个请求时丢失了。我在表单中使用了hidden_field,但在rails中必须有更好的方法。谢谢。
答案 0 :(得分:1)
students
控制器:
def new
@school = School.find(params[:school_id])
@student = @school.students.build
end
def create
@school = School.find(params[:school_id])
@student = @school.students.build(params[:student])
if @student.save
...
else
...
end
end
形式:
<%= form_for([@school, @student]) do |f| %>
...
<% end %>