首页>>后端>>Python->django如何判断上传的文件大小为空(2023年最新解答)

django如何判断上传的文件大小为空(2023年最新解答)

时间:2023-12-11 本站 点击:0

导读:今天首席CTO笔记来给各位分享关于django如何判断上传的文件大小为空的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

django celery 上传处理大文件出错

小于2.5M时,会放在 InMemoryFileUploadFile(内存里面) 对象里面;

大于2.5M时,会放在 TemporaryFileUploadFile (磁盘文件)里面

而 celery 做pickle_dump时会去找file object的encoding

这个encoding目前发现只能存在 InMemoryFileUploadFile 对象里面

所以,我们只有将所有上传文件都放到 InMemoryFileUploadFile 里面,才能通过celery

可以通过在settings里面设置

来修改策略使所有50M以内的文件都存在 InMemoryFileUploadFile 里面

这个设置谨慎使用,防止内存溢出!!!

django 上传文件问题

这个问题不是文件上传的问题,是很简单的文件编码。

这个在python里有些费解。经常出错。你要明白,django缺省使用unicode。如果你使用str类型。它会自动给你转换。这是python自动转换。不过在windows下,缺省它用GBK, 有时候会出错。

你这个环境正好是windows。 英文进行encode('utf-8')没有问题。

我建议你在文件前面加上一个coding:utf-8

然后将这句改成

assert(type(file_name)==unicode)

fpath=u'D:/texthub/texthub/site_media/upload/'+file_name.encode('gb18030')

你自己试验一下。

Django里的模板中,使用if语句判断大小, 比如if x

你可以将这个判断放在python的view里,然后将结果作为一个变量传递进去。这样就解决了。

我印象中template中并不所有的python 语法都支持。

有ifequal,似乎没有ifgreat, 似乎if (offset-30)也不成。

所以还是把这个判断放在view里。

结语:以上就是首席CTO笔记为大家介绍的关于django如何判断上传的文件大小为空的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/25378.html