我需要向我的 jsonapi-resources 控制器添加自定义操作。这个动作只是创建了一个预先存在的 CollectorContent 模型实例的新版本。我的实现(刚刚从这里复制):
路线.rb
jsonapi_resources :collector_contents do
member do
post :create_version
end
end
收集器内容控制器.rb
class CollectorContentsController < ApplicationController
def create_version
cc = CollectorContent.find(params[:id])
cc_new_version = cc.create_version!
render json: resource_serializer.serialize_to_hash(CollectorContentResource.new(cc_new_version, nil))
end
end
即使它有效,似乎也不推荐在控制器中添加新操作,但我不明白如何使用操作处理器来实现我的用例。你能帮忙吗?