[英]Rails 5 API mode: can't reach show action for a nested resource
我在API模式和2.5.3中使用rails 5.2.1。
我有以下routes.rb
文件..
Rails.application.routes.draw do
namespace :api do
resource :groups, only: [:show]
end
end
..和以下app/controllers/api/groups_controller.rb
文件
class Api::GroupsController < ApplicationController
def show
binding.pry
end
end
以下请求http://localhost:3000/api/groups
正确到达控制器的操作,从而触发binding.pry
。
问题是以下请求http://localhost:3000/api/groups/1
引发了路由错误:
没有路由匹配[GET]“ / api / groups / 1”
为什么会这样呢?
由于您想传递id
来显示操作,因此我想您可能需要在路线中使用它:
Rails.application.routes.draw do
namespace :api do
resources :groups, only: [:index, :show]
end
end
并在Api::GroupsController
具有index
并show
操作。
我建议您仔细阅读导轨 。 了解resource
与resources
之间的区别
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.