简单导航:未定义的局部变量或方法`root'

时间:2015-03-13 18:53:17

标签: ruby-on-rails-4

我按照here (simple-navigation configuration)的说明安装并配置了简单导航。

我修改了 config / navigation.rb (只包含一个菜单项):

primary.item :key_1, 'Home', root

我的 config / routes.rb 包含:

root 'static_pages#home'

佣金路线包含字符串:

    Prefix Verb   URI Pattern  Controller#Action
    root    GET   /            static_pages#home

app / views / layouts / application.html.erb 包含:

<%= render "layouts/header" %>

app / views / layouts / _header.html.erb 包含:

<%= render "layouts/main_nav" %>

app / views / layouts / _main_nav.html.erb 包含一个字符串:

<%= render_navigation %>

之后我收到了一个错误:

Showing <...>_main_nav.html.erb where line #1 raised:
undefined local variable or method `root'

为什么宁静的路线助手和命名路线助手是&#34;隐形&#34;在这种情况下?我尝试了路由表中的所有前缀。

1 个答案:

答案 0 :(得分:0)

第三个参数应该是网址或路径,因此请在 config / navigation.rb 中将root更改为root_path。您的菜单项应如下所示:

primary.item :key_1, 'Home', root_path