【发布时间】:2021-12-24 19:46:12
【问题描述】:
我是 ruby on rails 的新手,我想更改我上传的图像的名称 谢谢
resized_image = MiniMagick::Image.read(picture.image.download)
resized_image = resized_image.combine_options do |b|
b.resize '2760>'
b.quality '80'
end
v_filename = picture.image.filename
v_content_type = picture.image.content_type
picture.image.purge
picture.image.attach(io: File.open(resized_image.path), filename: v_filename, content_type: v_content_type)
end```
【问题讨论】:
-
您尝试过更改
v_filename = "new_name.jpeg"吗? -
是的,它可以工作,但如果我希望它是动态的,例如用下划线替换空格它将不起作用
-
动态是什么意思?动态部分来自哪里,模型?
-
@elmd00 您可以简单地更改
v_filename值,然后再将其传递给picture.image.attach -
@Chandan 如果我使用像 gsub 这样的方法,我会得到一个错误,比如“这不是一个公认的方法”
标签: ruby-on-rails ruby file-upload