请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

上传文件后文件后缀丢失

上传成功了一个电影,然后检查数据库信息,发现电影没有后缀.mp4,而图片有后缀.jpg。

检查了上传的原电影文件是有.mp4后缀的。

https://img1.sycdn.imooc.com/szimg//598d3a2500011be717400110.jpg

正在回答 回答被采纳积分+3

1回答

rustgopy 2017-08-11 13:17:37

同学,你好,这里文件命名用英文,不要用中文secure_filename会忽略中文。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕哥3993229 #1
    如果要用中文怎么解决,毕竟上传者不一定会知道这个原理。
    回复 有任何疑惑可以回复我~ 2017-08-11 13:48:02
  • 上传中文文件的话你需要看werkzeug.secure_filename的源码,修改源代码。
    回复 有任何疑惑可以回复我~ 2017-08-11 13:50:18
  • 提问者 慕哥3993229 回复 rustgopy #3
    那个有点麻烦了。
    我刚自己用了一个笨办法改了下change_filename方法,解决的这个问题。
    但不知道会不会有后遗症。
    
    # 修改文件名
    def change_filename(filename):
        fileinfo = os.path.splitext(filename)
        if fileinfo[-1] == '':
            fileinfo = '.'+fileinfo[-2]
        else:
            fileinfo = fileinfo[-1]
        filename = datetime.datetime.now().strftime('%Y%m%d%H%M%S') + str(uuid.uuid4().hex) + fileinfo
        return filename
    回复 有任何疑惑可以回复我~ 2017-08-11 13:59:12
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信