我需要向jsonapi-resources控制器添加自定义操作。该操作只是创建一个新版本的先前存在的CollectorContent模型实例。我的实现(仅从here复制):
routes.rb
jsonapi_resources :collector_contents do
member do
post :create_version
end
end
collector_contents_controller.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
即使工作正常,似乎也要在控制器is not the recommended way中添加一个新动作,但是我不明白如何使用运算处理器来实现我的用例。你能帮忙吗?