Добрый вечер! Интересует следующий вопрос, как добавить корзину для интернет-магазина на каждую страницу сайта (корзина как в книге Agile Web Dev), у меня 4 модели — Category, Product, Cart, Post.
layout
application.html.erb<%= render :partial => 'categories/cart', :locals => {:cart => @cart}%>
partial
_cart.html.erb<% if @cart.blank? %><br/>
<% else %><br/>
<% for item in @cart.items %><br/>
<%= item.quantity %> × <%=h item.title %><%= number_to_currency(item.price) %><br/>
<% end %><br/>
Итого: <%= number_to_currency(@cart.total_price) %><br/>
<%= button_to 'Очистить корзину', :controller => 'categories', :action => 'empty_cart'%><br/>
<% end %>
При таком раскладе корзина отображается только в представлении контроллера Categories. Не могу понять как достать из сессии session[:cart] или еще каким то образом необходимые данные.
И еще вопрос, как правильно отображать меню на каждой странице, сейчас примерно так:
<%= render :partial => 'posts/post', :collections => Post.all %>
Спасибо за ответы.