加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 纸夹从哪里获取原始文件的名称?

发布时间:2020-12-16 21:29:14 所属栏目:百科 来源:网络整理
导读:我开始使用nginx上传模块(它创建上传文件,如/ tmp / 000121545),但是我需要回形针来保存文件(如/public/avatars/LuckyLuke.jpg) 以前在参数Rails中传递的只是 "avatar"=#File:/tmp/RackMultipart20100413-6151-t3ecq0-0 没有原始的文件名,所以我想知道从哪里
我开始使用nginx上传模块(它创建上传文件,如/ tmp / 000121545),但是我需要回形针来保存文件(如/public/avatars/LuckyLuke.jpg)

以前在参数Rails中传递的只是

"avatar"=>#<File:/tmp/RackMultipart20100413-6151-t3ecq0-0>

没有原始的文件名,所以我想知道从哪里来的回形针?我试着看看插件代码,但现在对我来说太复杂了.

解决方法

浏览器发送一个带有文件名的HTTP头. (“Content-Disposition:filename = original_file.jpg”)

Rails使此可用作临时文件对象的实例方法:params [:avatar] .original_filename,而回形针使用它.

具体来说,Rack在Rack :: Utils :: Multipart :: UploadedFile中解析多部分表单,并在包含tempfile和:filename的参数中放置哈希值.然后ActionDispatch :: Http :: Upload随即通过File对象(值为:tempfile)替换该哈希值,并使用ActionDispatch :: Http :: UploadedFile模块进行扩展,该模块为original_path和方法original_filename添加了一个实例变量.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读