Это можно сделать следующим образом.
Напишите вспомогательный метод для этого (вспомогательные методы предназначены для выполнения некоторых простых функций для макета презентации, это идеальный случай).
ВВ Rails вы можете получить имя исполняемого в данный момент контроллера как
params[:controller]
и выполнить действие как
params[:action]
Так что в вашем помощнике приложения вы можете написать что-то вроде
module ApplicationHelper
def active_link (link)
(link == params[:controller]) ? "active" : ""
end
end
В приведенном выше примере, если текущий контроллер соответствует текущей ссылке, он вернет строку как «активную» или вернет пустую строку
Наконец, на ваш взгляд,
<ul>
<li><a class="<%= active_link('home') %>" href="index.asp">Home</a></li>
<li><a href="<%= active_link('dashbord') %>">Dashboard</a></li>
<li><a href="<%= active_link('people') %>">People</a></li>
</ul>
Примечания
- В этом решении предполагается, что у вас есть контроллер с подходящим именем для каждой ссылки.
- Я не проверял это, но должно работать, но этодолжна быть концепция