【发布时间】:2016-06-01 16:44:42
【问题描述】:
我有Topic 和Lesson 模型。一个主题有_很多课,一个课属于_一个主题。
在我的 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。
我做错了什么?
【问题讨论】:
-
只给出完整路径,
render partial: "available_lesson", collection: @available_lessons,我不确定细节,但我怀疑当您使用简写语法时,rails 会识别您的@available_lessons是 @ 的集合987654329@,这就是为什么它会自动寻找_topic.html.erb(只是猜测,查一下确定) -
它有效,非常感谢您的回答和详细信息。如果您想创建一个正确的答案,我会将其标记为正确的答案:)