windows下 rails上传中文文件名的文件 写文件的时候 转换了filename的编码(Iconv.iconv("gb2312","utf-8",filename))
存入数据库的path没有转换直接存入库中.
问题:下载文件的时候 英文的文件名可以下载 中文的确报错(Routing Error)
请指点,如何解决呢?
参考: [url]http://github.com/technoweenie/attachment_fu/[/url]
attachment_fu实现原理: 上传文件的文件名,类型等属性存到数据库attachments表里, 服务器上存成以GUID的文件名.
你可以在上传的时候生成一个唯一字符串作为文件名然后在db里面和实际名字一一对应。
暴露在页面的url就为host/sadfsdfsdfsdfsd444.jpgz这个形式。而真实名字也可以取到。
[code="java"]<%= link_to @model.real_filename, :controller => "file", :action => "show", :id => @model.unq_name_generated%>[/code]