Загрузка навигационной панели, когда в конкретном контроллере рельсы

У меня проблемы с рельсами.

Я хочу показать некоторые дополнительные ссылки в макете приложения, когда используется определенный контроллер. Как мне это сделать?

Я загружаю страницы динамически, используя jquery, и я попытался использовать <% if controller_name == "foo"%>, затем совершил какое-то волшебство, но безуспешно.

Если бы кто-то мог указать мне правильное направление или даже учебник рендеринга jquery-rails, это было бы здорово.

Благодарю.

1 ответ

Решение

Проверьте магию content_for, предоставляемую Rails. Это позволяет вам указать что-то подобное в макете приложения:

<%= yield :header %>

И тогда в ваших индивидуальных шаблонах сделайте что-то вроде этого:

<% content_for :header do %>
  Content I want put in the header
<% end %>

Что в основном приводит к тому, что содержимое внутри блока content_for захватывается и отображается в точке оператора yield. Таким образом, вы можете указать это в шаблонах для вашего контроллера.

Другие вопросы по тегам