我有一个根据用户所在页面呈现的动态子菜单。我将以下代码放在 _sub_menu.html.erb 部分中:
<a href="/dashboard/index" class="current">Index</a>
<a href="/dashboard/account">Account</a>
<a href="/dashboard/payments">Payments</a>`
从我的主要观点来看,我打电话给<%= render 'sub_menu' %>
,这很有效。
但是,我想根据用户所在的页面更改 class="current" 部分。我希望通过传入本地参数并根据该参数进行渲染来从渲染中做到这一点,但这似乎很hacky:
<%= render 'sub_menu' , :locals => {:active_item => 'payments'} %>
再加上逻辑变得非常丑陋。有没有更好的方法来做到这一点?