等一下。我不太确定你想做什么。是不是想更改人们在帖子中看到的文件名?如果是的话,或许你可以尝试类似下面的操作:
rake posts:remap["old-name.pdf","newname.pdf"]
具体可参考 在所有帖子中替换字符串。我认为对于你的需求来说,上传模型中的原始文件名其实并不重要。
不过,你可以通过以下方式修改它:
u=Upload.find_by(original_filename: 'mypretty-w9.pdf')
u.original_filename='better-name.pdf'
u.save
我尝试用该上传重新生成帖子,但没有任何变化。
编辑:
def rename_upload(old_name, new_name)
u=Upload.find_by(original_filename: old_name)
u.original_filename=new_name
u.save
end
如果你粘贴这段代码,就可以执行:
rename_upload('name.pdf','better-name.pdf')
这样就能确保下载时获得更合适的文件名。
在我以前做学术的那段日子里,我有自己独特的 PDF 命名方式,和任何人都不同;我敢肯定我妻子也有她自己的习惯。我猜,即使你把文件名改得“正确”,也没人会觉得满意。![]()