Ich habe Topic
und Lesson
Modelle. Ein Thema has_many Lektionen und eine Lektion gehören zu einem Thema.Schienen - Rendern teilweise bei Join Abfrage
In meinem topics_controller.rb Ich habe
@topics = Topic.all
und ich verwende render @topics
in der Indexansicht durch den Teil _topic.html.erb
Untill hier, alles ist in Ordnung.
Jetzt will ich in der home.html.erb eine Liste von Themen mit Unterricht machen, und verwenden Sie einen Teil (abweichend von _topic.html.erb) die HTML für diese Elemente zu machen.
In meinem static_pages_controller.rb ich habe:
def home
@available_lessons = Topic.joins(:lessons)
end
ich einen Teil _available_lesson.html.erb in den Ansichten erstellt/static_pages Ordner und dann in dem home.html.erb Datei stelle ich render @available_lessons
.
Ich erwartete, das neue Teil zu bekommen, aber Rails behalten das alte _topic.html.erb.
Was mache ich falsch?
geben Sie nur den vollständigen Pfad, 'teilweise Render: "available_lesson", Sammlung: @ available_lessons', bin ich mir nicht sicher über die Details, aber ich vermute Wenn Sie die Short-Hand-Syntax verwenden, erkennen Rails, dass Ihre '@ available_lessons' eine Sammlung von' Topic' ist, also wh y es automatisch nach '_topic.html.erb' suchen (nur raten, schau es dir an, um sicher zu gehen) – lusketeer
es funktioniert, vielen Dank für die Antwort und für die Details. Wenn Sie eine richtige Antwort erstellen möchten, werde ich sie als die richtige markieren :) – davideghz