2016-04-05 6 views
0

In meiner Show-Seite möchte ich eine partielle basierend auf dem Wert der Spalte Name rendern. In diesem Fall das @ location.name = "Modera", wie würde ich das machen? Ich muss das auch mehrmals machen, gibt es eine effizientere Möglichkeit, seitenspezifischen Inhalt anzuzeigen, der nicht direkt von der db stammt?Wie man eine partielle basierend auf dem Datenbankinhalt anzeigt

<% if @location.name === 'Modera' %> 
<%= render 'locations/example' %> 
<% end %> 

Antwort

0

Sie immer könnte die Variable auf Ihre Teil-Pass:

<%= render 'locations/example', locals: { location: @location.name } %>

Dann in locations/example.html.erb Sie Zugriff auf location haben wird und gehen von dort aus.

+0

Danke für die Antwort. Ich versuche nicht, eine Variable in die partielle zu übergeben, ich versuche, eine partielle basierend auf dem (location.name) auf der Show-Seite zu rendern. Wenn zum Beispiel location.name = 'this', dann möchte ich das partielle rendern, aber wenn location.name = 'that', möchte ich das partielle nicht rendern. – halfacreyum

+0

Okay. Ich muss gedacht haben, dass Sie versuchen, das gleiche teilweise zu rendern, aber es würde anders aussehen, basierend auf dem, was Ihr 'name' Attribut war. – jdgray

+0

Richtig, ich versuche, bestimmte Teiltöne basierend auf dem Inhalt der angezeigten Seite zu rendern. Wie würde ich das tun? – halfacreyum

Verwandte Themen