добавьте before_filter
в свой ApplicationController:
before_filter :define_posts
def define_posts
@posts = Post.all
end
Тогда ваше меню должно выглядеть так:
<nav>
<ul>
<% @posts.each do |post| %>
<%= link_to post.title, post.permalink %>
<% end %>
</ul>
</nav>
Другой подход заключается в создании вспомогательного метода в вашем ApplicationController:
helper_mathod :posts
def posts
@posts ||= Post.all
end
Так что вы можете вызвать его прямо из меню:
<nav>
<ul>
<% posts.each do |post| %>
<%= link_to post.title, post.permalink %>
<% end %>
</ul>
</nav>
Второй подход выглядит немного чище.
И одним из современных решений является использование Gecent Excenture gem :
http://railscasts.com/episodes/259-decent-exposure