为什么我的HAML命名路由为空?

时间:2013-04-04 23:42:09

标签: ruby-on-rails ruby haml link-to

我正在尝试在HAML中创建一些页面,这些页面部分正常工作。它产生的HTML是正确的,除了一件事。我在哪里:

%ul#menu 
  %li 
    = link_to 'Home', root_url

我期待着回来:

<a href="/">Home</a>

相反,它正在产生:

<a href>Home</a>

进一步研究后,我的所有命名路线似乎只是返回一个空白字符串而不是它们的意图。所有这些都发生在不仅仅是root。

如果我尝试将其更改为一个虚构的名称,就像'test_path'那样,正如我所料,我得到一个错误,说该方法不存在,所以这不是一个无法找到它的情况,它根本就没有返回任何东西。

在Rails控制台中,我能够获得正确的路线,因此我知道它正在工作,rake routes给了我:

about        /about(.:format)                   welcome#about
contact      /contact(.:format)                 welcome#contact
faq          /faq(.:format)                     welcome#faq
plans        /plans(.:format)                   welcome#plans
root         /                                  welcome#index

任何人都可以提供帮助,因为这是一个非常重要的问题,如果我无法生成任何链接,那么很难继续开发

1 个答案:

答案 0 :(得分:0)

好的,我知道它是什么。

我正在处理的应用程序为组织使用BaseCamp样式的子域。

关于实施子域名的Railscast #221 Subdomains in Rails 3后,我创建了url_for方法,如图所示,但只是错过了super关键字,因此它永远不会生成网址。