【问题标题】:Building custom route in rails在 Rails 中构建自定义路线
【发布时间】:2013-09-24 05:57:48
【问题描述】:

我有这条路线:

put 'workstations' => 'workstation#update'

我打算与此链接匹配:

link_to "Update", controller: "workstations", action: "update", :method => :put

但我收到此错误,我不知道为什么:

No route matches {:controller=>"workstations", :action=>"update", :method=>:put}

如何构建路线,为什么我指定的路线不起作用?

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 controller routing


    【解决方案1】:

    可能是拼写错误。

    你写道:

    put 'workstations' => 'workstation#update'
    

    但控制器名称应该是复数,如:

    put '/workstations' => 'workstations#update'
    

    此外,您始终可以运行 rake routes 并在您的应用中获取生成的路由列表和路由名称。

    编辑

    顺便说一句,你可以通过以下更优雅的方式实现相同的路由生成:

    resource :workstations, only: :update
    

    【讨论】:

    • 我一直在使用这个应用程序,如 here 所见,但你是对的,这种情况是拼写错误。
    猜你喜欢
    • 1970-01-01
    • 2014-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多