将图像保存到对象Django

时间:2013-10-22 16:28:24

标签: django

我正在尝试将图像添加到对象中。以下代码

event_obj = Event.objects.get_or_create(name=name, description=description, publish=publish,
                                                url=url, venue=venue_obj, image=None)

        if image_filename:
            image = None
            image_exists = False
            if image_filename != "":
                image_path = os.path.join(settings.DIRNAME, 'website', 'data', 'images', image_filename)
                if os.path.exists(image_path):
                    image_exists = True

            if image_exists:
                image_data = open(image_path, 'rb').read()
                image, created = Image.objects.get_or_create(title=name)
                event_obj.image.save(image_filename, ContentFile(image_data), True)

        event_obj.save()

抛出以下错误

event_obj.image.save(image_filename, ContentFile(image_data), True)AttributeError: 'tuple' object has no attribute 'image'

我的活动模型使用以下字段

image = models.ImageField(null=True, blank=True, upload_to="event_images")

任何人都可以解释为什么我不能保存这个数据或者可能指向一个有效的方向?谢谢!

1 个答案:

答案 0 :(得分:1)

这与图像无关。

get_or_create返回(object,created)元组。您已将整个元组分配给event_obj