Witam.
Podzieliłem sobie stronkę na layouty. W _sidebar.html potrzebuję pobrać listę z bazy danych. Chciałem zrobić to w taki sposób.
<ul class="nav nav-list">
<% @project_strong.each do |project_strong| %>
<li><a href="#"><%= project_strong.name %></a></li>
<% end %>
I niestety ta funkcja działa, jeżeli otwarta podstrona to ta, która używa funkcji z tego kontrolera, a niestety gdy wejdę na inną postronę to kontroler się zmienia, a więc i @project_strong znika. Pomimo tego, chcę aby w sidebar była renderowana lista projektów z bazy danych.
Error: NoMethodError in IndexPage#index - undefined method ‘each’ for nil:NilClass
Pewnie bardzo łatwo to zrobić, a ja niestety początkujący.
Pozdrawiam.
Możesz wrzucić before_filter w nadrzędnym kontrolerze i w nim załadować @project_strong (btw - czy to nie powinna być nazwa kolekcji?) - czyli np w application_controller.rb
OK. Też tak myślałem żeby to dodać do helpera. Ale zastanawiało nie jedno: kiedy dawać do helpera a kiedy do controlera? Operacje na bazie danych do controlera a inne pomocne rzeczy do helpera czy jak to odróżniać ?