【发布时间】:2019-07-08 18:22:51
【问题描述】:
我正在设置一个可以 POST 到(创建)的新路由“/v1/example_two”,但是它导致 No route matches [POST] RoutingError
我已尝试明确说明帖子,尝试通过资源创建路由
config/routes.rb
Rails.application.routes.draw do
resources :roles, only: [:index], defaults: { format: :xml }
defaults format: :json do
scope :v1 do
resources :example_one, only: [:create, :show], param: :uuid
resources :example_two, only: [:create], param: :uuid
end
end
end
我有一个控制器:
app/controllers/example_two.rb
class example_two < ApplicationController
def create
...
end
end
我希望它返回 example_two#create 中的任何内容,但是当我在 Postman 中向 /v1/example_two 或 /v1/example_two/123 提交 POST 请求时,它会导致 ActionController::RoutingError (No route matches [POST] \"/v1/example_two\"
【问题讨论】:
-
你指定的路径中的
api在哪里,在routes.rb文件中看不到 -
rake routes的输出是什么? -
@Eyeslandic 抱歉,我的意思是我正在使用 Postman 向
/v1/example_two和/v1/example_two/123发出 POST 请求(不确定我应该发到哪一个)
标签: ruby-on-rails routes