我希望将其传递给控制器,因此我不必重复或询问路径名称。
<ul class="nav navbar-nav">
<li><%= link_to 'Breakfast', '/breakfast', class: ('active' if request.path == breakfast_path) %></li>
<li><%= link_to 'Lunch', '/lunch', class: ('active' if request.path == lunch_path) %></li>
<li><%= link_to 'Deli', '/deli', class: ('active' if request.path == deli_path) %></li>
<li><%= link_to 'Contact', '/contact', class: ('active' if request.path == contact_path) %></li>
</ul>
宝石不会被视为答案......
谢谢!
答案 0 :(得分:3)
我不确定将它传递给控制器是一个很好的解决方案 - 它关注视图逻辑,所以我认为视图是处理它的正确级别。也许创建一个包装link_to的辅助方法将是正确的方法。这是一个没有经过测试的想法:
# YourHelper
def nav_link_to(label, path)
link_to(label, path, class: 'active' if path == request.path)
end
答案 1 :(得分:1)
您可以使用active_link_to
gem:
<input type="text" value="">