我正在开发一个 Ruby-on-Rails 项目,使用链接到 AWS-S3 的 ActiveStorage 进行文件上传和存储。我使用小丑gem 来克隆我的对象。
我想克隆一个带有附加文件的对象,同时也克隆这个文件(所以也在 AWS-S3 中克隆它)。
我在谷歌上看了很长时间,发现clowne_active_storage gem 来管理 ActiveStorage 附件克隆。
但我的问题是,当我尝试克隆多个对象时,克隆对第一个对象运行良好,而对其他对象不起作用。
我的用户模型:
class User < ApplicationRecord
MAX_FILE_SIZE = 30.megabytes
MAX_FILE_SIZE_HR = "30MB" #human readable
validate :validate_fields
has_one_attached :file_input
def has_attachment?
!self.file_input.attachment().nil?
end
private
def validate_fields
validate_file_size
end
def validate_file_size
if file_input.attached? && file_input.blob.byte_size > MAX_FILE_SIZE
file_input.purge
errors[:base] << ("File size should be less than " + MAX_FILE_SIZE_HR)
end
end
end
Run Code Online (Sandbox Code Playgroud)
我克隆多个对象的代码:
self.users.each { |user|
user_copy = UserCloner.call(user).to_record
user_copy.save!
}
Run Code Online (Sandbox Code Playgroud)
我的 UserCloner …
有谁知道这行代码的导入语法:
const { Translate } = require("@google-cloud/translate").v2;
Run Code Online (Sandbox Code Playgroud)
我在想这样的事情:
import { Translate } from "@google-cloud/translate.v2"
Run Code Online (Sandbox Code Playgroud)
但这不起作用。有任何想法吗?
javascript import google-translate node.js google-cloud-translate