Вам нужно будет проложить маршрут, даже если что-то вроде /fileupload
действительно не RESTful.
Я склонен настроить ресурс так:
resources :attachments
С соответствующим классом для обработки загруженного объекта.
class Attachment < ApplicationRecord
has_attached_file :data
end
Вам также понадобится контроллер.
class AttachmentsController < ApplicationController
before_action :set_attachment, only: :index
before_action :set_attachment, except: %i[show destroy]
def index
render json: { images: @attachments }.to_json
end
def create
if @attachment.update_attributes!(attachment_params)
render json: { attachment: @attachment }, status: 200
else
render json: { error: @attachment.errors }, status: 400
end
end
def show
render json: { attachment: @attachment }.to_json
end
def update
if @attachment.update_attributes!(attachment_params)
render json: { attachment: @attachment }.to_json
else
render json: { error: @attachment.errors }, status: 400
end
end
def destroy
if @attachment.destroy
render json: { message: 'success' }, status: 200
else
render json: { message: @attachment.errors }, status: 400
end
end
end
Таким образом, вы соответствуете RailsООП логика.Однако ваш маршрут изменится с /fileupload
на /attachments
.