好吧所以我有这个控制器(courses_controller.rb)和def show如下:
def show
@course = Course.find(params[:id])
end
我想像这样链接到它:
<%= link_to "Back", :controller => "courses", :action => "show", course => @lesson.course_id %>
lesson.rb确实有一个course_id。这是最后一段(course =&gt; @ lesson.course_id) 这给了我一些问题。声明的后半部分是有效的,它是我无法做到的“课程”部分。我也试过@course。任何想法?
答案 0 :(得分:6)
您确定在模型中设置了课程 - 课程关系吗?在RAILS_APP/app/models/lesson.rb
中,您需要
Class Lesson < ActiveRecord::Base
belongs_to :course
end
在RAILS_APP/app/models/course.rb
中,您应该
Class Course < ActiveRecord::Base
has_many :lessons
end
然后,在你的观点中,你可以放,
<%= link_to "Back", @lessson.course %>
应该是全部。
答案 1 :(得分:3)
容易!
<%= link_to "Back", course_path(@lesson) %>
答案 2 :(得分:0)
试试这个
<%= link_to "Back", :controller => "courses", :action => "show", :id => @lesson.course_id %>
而不是“课程”使用“id”,它会正常工作。