【问题标题】:Rails 3.2. Routing helper generates unvalid links导轨 3.2。路由助手生成无效链接
【发布时间】:2013-08-26 08:45:12
【问题描述】:

在 routes.rb 中:

scope "(:locale)", locale: /en|de/ do
    get 'service' => 'service#index'
    get 'service/:id' => 'service#show'
end

然后在视图中我使用助手service_path(params[:locale], id) 并获取此链接/en/service.1。 但我需要这样的链接/en/service/1

通过rake routes检查路由:

service GET    (/:locale)/service(.:format)   service#index (locale=>/en|ru/}
        GET    (/:locale)/service/:id(.:format)  service#show {:locale=>/en|ru/}

如何获取/en/service/1之类的正常链接,我做错了什么?

【问题讨论】:

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


    【解决方案1】:

    你应该将你的控制器重命名为复数形式Services

    路线变化:

    get 'service' => 'service#index'get 'services' => 'services#index', :as => :services

    获取'service/:id' => 'service#show' 获取'services/:id' => 'services#show', :as => :service

    或者你可以写简单:

    resources :services, :only => [:show, :index]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-28
      • 2015-08-12
      • 2019-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-07
      相关资源
      最近更新 更多