我试图弄清楚我可以在Rails API中创建创建操作的不同方法。这是我的索引操作(有效)和我当前创建操作的实现。
routes.rb文件:
Rails.application.routes.draw do
namespace :api do
namespace :v1 do
resources :vendors
end
end
end
控制器:
class Api::V1::SuyasController < ApplicationController
def index
render json: Suya.all
end
def create
render json: Suya.create(suyas_params)
end
private
def suyas_params
require(:suya).permit(:meat, :spicy)
end
end
我需要使用respond_with / respond_to吗?这被抽象出来的responders.gem。如果我不想使用响应者gem,这是创建api的最佳方法吗?
答案 0 :(得分:1)
由于它的API控制器只负责API调用,是的,您应该使用respond_to
和respond_with
辅助方法,如下所示:
class Api::V1::SuyasController < ApplicationController
respond_to :json
...
def create
respond_with(Suya.create(suyas_params))
end
...
end