我有Topic
和Lesson
个型号。主题has_many课程和课程属于主题。
在 topics_controller.rb 中,我有
@topics = Topic.all
我在索引视图中使用render @topics
,通过部分 _topic.html.erb
直到这里,一切都很好。
现在,我想在 home.html.erb 中渲染带有课程的主题列表,并使用部分(不同于 _topic.html.erb )为这些元素呈现html。
在我的 static_pages_controller.rb 中,我有:
def home
@available_lessons = Topic.joins(:lessons)
end
我在views / static_pages文件夹中创建了部分 _available_lesson.html.erb ,然后在 home.html.erb 文件中添加了render @available_lessons
我希望获得新的部分,但Rails会继续渲染旧的 _topic.html.erb 。
我做错了什么?
答案 0 :(得分:0)
只提供完整的路径
render partial: "available_lesson", collection: @available_lessons
我不确定详细信息,但我怀疑当您使用简写语法时,rails会识别您的@available_lessons
是Topic
的集合,这就是为什么它会自动查找_topic.html.erb
(只是猜测,查找以确保)