我有一个使用以下save
方法的模型
def save(self, *args, **kwargs):
self.url = slugify(self.name)
# Saving creative if object is saved first time
if self.reloadImages is True:
print "Reload IMages"
for img in self.creative_url.split("\n"):
content = urllib2.urlopen(img).read()
extra_image = ExtraImage()
extra_image.img.save("%s.jpg" %(self.name), ContentFile(content), save=False)
extra_image.save()
self.extra_imgs.add(extra_image)
#print self.extra_imgs.all()
#self.reloadImages = False
super(Item, self).save(*args, **kwargs)
我希望它创建一个ExtraImage
对象(由ImageField
组成)。并将其添加到当前模型的manytomy extra_img
字段中。。。。在
奇怪的是,方法似乎正确地完成了它的工作,页面刷新后,我在extra_imgs
字段中看不到任何内容。(并且ExtraImage
项是实际创建的)
问题是添加图像
在数据库中创建
^{pr2}$self
之前为了补充San4ez的答案,这个问题(在保存对象的依赖关系之前必须先保存对象,并且依赖关系并不总是按照您期望的方式进行)在我第一次开始学习Django时让我感到沮丧。在
如果您有大的对象图(甚至小的对象图:)并且您不想手动处理这个问题,请查看Django ORM Tools,它有一个GraphSaver类,它将自动检测依赖关系并按正确的顺序保存图形。在
相关问题 更多 >
编程相关推荐