Mam taką pętlę:
<% @posts.each do |post| %>
<% render middle %>
<% end %>
Następnie w środkowej części, jak uzyskać dostęp do bieżącego postu?
ruby-on-rails
ruby
ruby-on-rails-3
Elliot
źródło
źródło
Odpowiedzi:
Spróbuj tego:
W ten sposób będziesz mieć lokalną zmienną
post
dostępną w części.źródło
<%= render 'middle', :post => post %>
szyn 3.1.xDaj to częściowej jako zmienną lokalną
Oczywiście rails ma również skrót do renderowania kolekcji:
W tym przypadku wywoła częściowy post dla każdego posta z lokalną zmienną „post”
Możesz nawet renderować szablon odstępnika między poszczególnymi postami:
źródło
<%= render :partial => 'post', :collection => @posts, as: :post %>
automatycznie przejdzie przez każdypost
z twoich podrzędnych, więc możesz użyć ichpost
jako zmiennej.Możesz teraz uzyskać dostęp do wpisu jako zmiennej lokalnej
post
w częściźródło
Wymień
<%= render middle %>
się<%= render middle, :post => post %>
. Następnie wmiddle
części możesz uzyskać dostęp dopost
zmiennej.źródło