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

django – 使用mongoengine和models.ImageField

发布时间:2020-12-20 13:24:53 所属栏目:Python 来源:网络整理
导读:我在使用 django / mongoengine应用程序使用 django-athumb时遇到了麻烦.我正在尝试保存不同大小的图像并将它们存储在S3上,这正是当与django股票安装一起使用时所做的事情.但是,使用mongoengine,在对象的字段上调用save()会导致“’ImageWithThumbsField’对
我在使用 django / mongoengine应用程序使用 django-athumb时遇到了麻烦.我正在尝试保存不同大小的图像并将它们存储在S3上,这正是当与django股票安装一起使用时所做的事情.但是,使用mongoengine,在对象的字段上调用save()会导致“’ImageWithThumbsField’对象没有属性’save’”消息.

处理文件上传的views函数内部(其中doc.image是ImageWithThumbsField):

if request.FILES.get('image'):
    file = request.FILES['image']
    fdat = file.read()
    file_contents = ContentFile(fdat)
    doc.image.save(file.name,file_contents)

以上结果导致上述错误.

如果我改为打电话:

doc.image.attr_class(file_contents,doc.image,file.name).save(file.name,file_contents)

我能够访问save方法,但它是hackish并且可能会导致更多问题然后解决.我的问题:既然ImageWithThumbsField是继承models.ImageField的子类,那么使用models.ImageField和mongoengine是不可能的(或者至少是不切实际的)?

解决方法

我知道这个问题已经过时了,但当时似乎没有对 ImageField in mongoengine – this was added in version 0.6.的支持

如果你仍然有mongoengine的问题,请尝试升级到大于0.6的版本..他们甚至投入生成缩略图的能力

(编辑:李大同)

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

    推荐文章
      热点阅读