使用导轨与Paperclip,我可以使用以下来获取在before_create期间的文件名:
extension = File.extname(photo_file_name).downcase
我如何获取JUST的文件名..现在我有photo_file_name,它提供了整个文件,titlename.pdf
我没有.pdf只需要titlename
谢谢
更新代码:
photo.rb:
before_create :obfuscate_file_name #Paperclip for photo has_attached_file :photo,...... private def obfuscate_file_name extension = File.extname(photo_file_name).downcase fileNameOnly = File.basename(photo_file_name).downcase self.photo.instance_write(:file_name,"#{fileNameOnly}_#{ActiveSupport::SecureRandom.hex(32)}#{extension}") end
解决方法
使用
File.basename
与可选后缀参数,如下所示:
file_name = File.basename(photo_file_name,File.extname(photo_file_name));
在我的机器上工作: