我正在使用Rails 6 Web应用程序中的活动存储上传到Amazon S3。直到我上传带有特殊字符的文件,然后尝试读取该文件时该应用程序崩溃,该Web应用程序才能正常工作。
我了解亚马逊不接受特殊字符,但是我不确定在上传之前如何转换文件名...在搜索论坛上,您似乎可以清除文件名,但是我不确定该代码将去哪里?
尝试一下
class Model < ApplicationRecord
after_create :rename_filename
def rename_filename
if active_storage_object.attached?
active_storage_object.blob.update(filename: "filename.#{active_storage_object.filename.extension}")
end
end
end