【发布时间】:2015-03-07 10:37:33
【问题描述】:
我正在覆盖我的保存方法,因为我想调整我的图像大小。我的问题在这段代码中很明显,在我保存数据后发生的事情是 django 启动了一个无限循环。当然是因为我正在检查 self.vertical 是否设置(并且总是设置)。总是调用保存方法。
我可以通过检查我的 self.id 是否为 none 来解决此问题,但代码仅适用于新条目,如果用户尝试更新,则不会发生任何变化,因为 id 不为空。
我还尝试向 kwargs 弹出一个错误参数,保存后设置为 true,但也没有用。有人知道我该如何解决这个问题?
PS:get_thumbnail是sorl缩略图插件的方法。
def save(self, *args, **kwargs):
if self.vertical_poster:
super(Movie, self).save(*args, **kwargs)
resized_vertical = get_thumbnail(self.vertical_poster, "155x240", quality=99)
#save the new resized file
self.vertical_poster.save(resized_vertical.name, ContentFile(resized_vertical.read()), True)
super(Movie, self).save(*args, **kwargs)
任何想法或示例代码将不胜感激!谢谢
【问题讨论】:
标签: django django-models django-admin sorl-thumbnail