私はgithubでcarrierwavewikiを見て、それらが説明する方法を使用して一意のファイル名を生成しました。
def filename
@filename ||= "#{secure_token}.#{file.extension}" if original_filename.present?
end
private
def secure_token
var = :"@#{mounted_as}_secure_token"
random_token = Digest::SHA2.hexadigest("#{Time.now.utc}--#{model.id.to_s}").first(20)
model.instance_variable_get(var) or model.instance_variable_set(var, random_token)
end
(ただし、ハッシュを使用)
私が抱えている問題は、ファイル名がまだ元のファイルの名前に設定されていることです。それはfilename
まるで方法が無視されているかのようです。何が起こっているのかよくわかりません。サーバーとすべてをリセットしましたが、アップロードされたファイルとサムネイルバージョンで元のファイル名を取得しています。