AnA*_*ice 16 ruby ruby-on-rails paperclip ruby-on-rails-3
使用带有Paperclip的rails,我可以使用以下命令在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
Run Code Online (Sandbox Code Playgroud)
Jac*_*kin 24
File.basename与可选suffix参数一起使用,如下所示:
file_name = File.basename(photo_file_name, File.extname(photo_file_name));
Run Code Online (Sandbox Code Playgroud)
适用于我的机器:
