Предполагается, что ваше приложение / models / photo.rb выглядит примерно так:
class Photo < ActiveRecord::Base
attr_accessible :title, :bytes, :image, :image_cache
belongs_to :album
mount_uploader :image, ImageUploader
validates_presence_of :title, :image
end
Что произойдет, если вы попытаетесь:
...
user = User.new(title: "Chris")
user.photo.image = preloaded_file # <---- assign file to image attribute
user.save
Вы также можете попытаться эмулировать этот пример приложения для вашего случая: https://github.com/cloudinary/cloudinary_gem/tree/master/samples/photo_album
РЕДАКТИРОВАТЬ : вы можете попробовать что-то вроде этого:
require 'uri'
file = URI.open(user_img_response["url"]) # use cloudinary url
photo.image.attach(io: file, filename: 'image.jpg')
См .: https://blog.eq8.eu/til/upload-remote-file-from-url-with-activestorage-rails.html