我正在尝试使用rails + Carrierwave上传文件后获取文件的网址。
这是我的控制器:
class PhotosController < ApplicationController
before_action :check_authorization!
skip_before_action :verify_authenticity_token, only: :create
def index
render json: Photo.all
end
def create
@photo = Photo.create(photo_params)
if @photo.valid?
render json: @photo
else
render json: { errors: @photo.errors.full_messages }, status: 422
end
end
private
def photo_params
params.permit(:photo, :description)
end
end
但是在文件上传后,我得到的是:
{
"id": 12,
"photo": "#<ActionDispatch::Http::UploadedFile:0x00000004c08c18>",
"description": "test",
"created_at": "2018-07-22T18:01:01.699Z",
"updated_at": "2018-07-22T18:01:01.699Z"
}
我尝试使用merge
并尝试使用photo属性获取URL,但是我遇到的问题是属性photo
是字符串。
答案 0 :(得分:0)