我正在使用carrierwave上传文件。我在这里面临的问题是,如果我只使用model.name,那么文件名就可以正常上传,并且能够下载上传的文件。但是,当我在文件名中添加DateTime.now时,就会出现问题,URL显示如下,并且我无法下载该文件。请帮助我解决此问题,因为我需要文件名中的DateTime.now。
def filename
"#{model.name}-#{DateTime.now)}"
end
http://localhost:3000/uploads/document/file/91/Time%20Sheet-2020-03-10T16%3A40%3A12-04%3A00
更新
def filename
"#{model.name}-#{timestamp}"
end
private
def timestamp
@timestamp ||= DateTime.now
end
def filename
"#{model.name}-#{Time.now.strftime("%d:%m:%Y-%H:%M")}"
end
这就是我的工作方式。