【发布时间】:2013-01-07 01:27:20
【问题描述】:
我目前正在阅读 Michael Hartl 的 Rails 教程,但遇到了一个我无法理解的错误。
教程中有一节解释了如何在 routes.rb 文件中创建自定义 URI。本教程通过编码解释了这一点:
match '/about', to: 'static_pages#about'
应自动创建命名路由,如下所示:
about_path => '/about'
about_url => 'http://localhost:3000/about'
接下来的部分通过用这些变量替换某些代码位来帮助您修复 rspec 测试。但是当我这样做时,我最终每次测试都失败了,因为找不到所有“自动创建的变量”......
谁能向我解释为什么找不到它们,或者我可以在哪里查看它们是否实际上已经创建。
【问题讨论】:
-
rake routes是您的朋友,如果您想查看所有已知路线,如果您使用 3.2+,您还可以查看六分仪 gem github.com/schneems/sextant -
您可能还需要添加
as: 'name'选项:guides.rubyonrails.org/routing.html#naming-routes -
您还应该使用“get”这个词而不是 match,因为这定义了预期的请求类型。
-
添加路由时,是否记得重启 Rails 服务器并重启 Spork?
标签: ruby-on-rails ruby railstutorial.org