【问题标题】:match ':controller(/:action(/:id))(.:format)' not found in config/routes.rb在 config/routes.rb 中找不到匹配 ':controller(/:action(/:id))(.:format)'
【发布时间】:2014-03-10 19:13:45
【问题描述】:

尝试在带有 rails 4 和 ruby​​ 2 的 CentOS 6 Linux 上遵循本书 Learning Rails 3

它反复建议我取消注释 config/routes.rb 中的一行:

再一次,您需要为您的控制器启用路由。您需要编辑 config/routes.rb 文件。删除下面加粗的#:

# match ':controller(/:action(/:id))(.:format)'
    end

config/routes.rb 中没有这样的行 - 至少在我运行类似的东西之后没有

 # rails new guestbook
 # cd guestbook/
 # rails generate controller entries
 # vim app/controllers/entries_controller.rb
 # vim app/views/entries/sign_in.html.erb
 # rails server

Rails 4 中是否有新的类似配置行?

【问题讨论】:

  • 如果我是正确的,那么匹配将在 Rails 4 中被删除
  • 已删除 - 好的,但是要在 routes.rb 中添加什么 - 让 guestbook 正常工作?
  • 您必须在 routs.rb 中添加一些内容。试试这个root 'entries#index'

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 routes


【解决方案1】:

常规路线示例:

get 'products/:id' => 'catalog#view'

还有这样的根。

root 'home#index'

【讨论】:

    【解决方案2】:

    您还可以像这样添加一条包罗万象的路线:

      get ':controller(/:action(/:id))'
    

    【讨论】:

      猜你喜欢
      • 2014-11-26
      • 1970-01-01
      • 1970-01-01
      • 2012-07-17
      • 2014-05-08
      • 2018-09-22
      • 2012-11-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多