提问人: 提问时间:9/10/2021 最后编辑:Stefan 更新时间:9/10/2021 访问量:94
剥离字符串以构建新的 S3 路径
Stripping a string to build a new S3 path
问:
在我的项目中,我为在我的 S3 存储桶中的两个文件夹之间移动的每个上传分配单独的 UUID,以便稍后个性化它们的链接。
但是,在尝试按照以下方法中所示格式化对象键时,下面的
所有代码都变灰/不再起作用,表示我看不到语法错误。parts = old_key.split('/')
def move_and_rename(target_folder, prefix_generator: nil)
prefix_generator ||= -> { SecureRandom.uuid }
s3_objects.each do |obj|
prefix = prefix_generator.call
old_key = obj.key
parts = old_key.split('/')
new_last_part = "#{prefix}-#{parts.last}”
new_key = (parts[0..-2] + [new_last_part]).join('/')
new_key = s3_folder ? obj.key.sub(s3_folder, target_folder) : (parts[0..-2] + [new_last_part]).join('/')
obj.move_to(bucket: bucket_name, key: new_key)
yield(old_key: old_key, new_key: new_key, obj: obj, prefix: prefix) if block_given?
end
self
end
或者也许我在方法中的结构完全错误?任何指点将不胜感激。
答: 暂无答案
评论
new_last_part = "#{prefix}-#{parts.last}”
看最后一个字符,应该是,但是一个右双引号"
”