Я пытаюсь использовать частичное отображение меню приложения, используя «вкладку» с заглавной буквы с помощью CSS на основе локальной переменной (вкладки):
<%= link_to "employees", jobs_path, :class => (tab=="employees" ? "selected":"unselected") %>
<a class="unselected">jobs</a>
<%= link_to "tags", tags_path, :class => (tab=="tags" ? "selected":"unselected") %>
Партиал встроен в макет приложения:
<body>
...
<!-- tab variable needs to be set in the view, not the layout -->
<%= render :partial => "layouts/primary_menu", :locals => { :tab => "profiles" } %>
...
</body>
К сожалению, мне нужно установить значение переменной в представлении, но переменная недоступна. Должен ли я использовать символ :content_for вместо :locals?
В какой-то момент мне может понадобиться передать переменную экземпляра модели в партиал, поэтому решение должно быть гибким.
Есть ли лучший подход?