繁体   English   中英

图像名称未在Rails中使用CarrierWave保存为原始图像名称

[英]image name is not saved as original image name using CarrierWave in rails

我正在使用CarrierWave上传将存储到公共-> uploads文件夹中的图像。

在我的uploader.rb文件中,代码结构就是这样给文件名,

def filename
"image.#{File.extname(original_filename).downcase}" if original_filename
end

但是所有图像都另存为images.jpg。 但是我想保存原始名称的图像,例如是否要上传包含名称为car.jpg的图像,而不是将图像另存为car.jpg而不是在公共->上传文件夹中保存为image.jpg。

如果有人知道此问题,请帮助我。

谢谢。

您可以执行以下操作:

def filename
    model.file_name
end

其中file_name是包含文件名的任何正在上传的属性(如果需要扩展名,请像已经做的那样附加它)。

在您当前的代码中,文件将另存为“图片”(因为您对“图片”进行了硬编码。您也可以尝试

"#{original_filename}.#{File.extname(original_filename).downcase}" if original_filename

如果original_filename是您期望的)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM