Multivariable parziale in Ruby on Rails
-
19-09-2019 - |
Domanda
Ho un parziale che voglio reso con una collezione e l'altra variabile. E 'possibile passare più di una variabile ad un parziale?
Per illustrare:
Categoria HABTM Marchi
Questa è solo semi-pseudo-codice, ma voglio fare qualcosa di simile:
<% @categories.each do |c| %>
<%= c.name %>
<%= render :partial => "mypartial", :collection => c.brands, :object => c.id %>
<% end %>
Il parziale richiede l'ID categoria così come il "current_brand". Tutte le idee?
Soluzione
All'interno della visualizzazione, si passa un hash alla coppia :locals
chiave-valore nelle opzioni argomento hash.
<%= render :partial => 'partial', :locals => { :foo => 'a', :bar => 'b' } %>
... e questi tasti diventano disponibili come variabili nei vostri parziali.
Foo is: <%= foo %>
Bar is: <%= bar %>
Altri suggerimenti
È possibile dare un parziale di qualsiasi numero di variabili con la possibilità :locals
. Ci vuole un hash di nomi e valori delle variabili.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow