我有一个 Rails 应用程序,它有 2 个菜单,其中的菜单会根据用户当前访问的页面而变化。有没有办法告诉 Rails,如果用户正在访问这个控制器,无论访问者是否在 index、edit、create、update、delete 方法上?
我目前正在使用这样的助手,它确实有点乱。
def which_page
current_page?(root_path) ||
current_page?(skate_movies_path) ||
current_page?(new_skate_photos_path(@user)) ||
current_page?(skate_photos_path) ||
current_page?(skate_tricks_path)
end
在我看来部分
<% if which_page %>
<%= default_menu %> #upload, #photos, #trick-tips, #goals
<% else %>
<%= skate_menu %> #dashboard, #shared-videos, #profile
<% end %>
问题是这行得通,但在整个应用程序中,我总是找到一两个页面,它给我一个路由错误。有什么方法可以在不指定任何操作的情况下告诉用户正在使用哪个控制器和操作?