Пытаюсь сразу обновить запись после сохранения. Этот пример может показаться бессмысленным, но представьте, что нам нужно использовать API после сохранения данных, чтобы получить дополнительную информацию и обновить запись:
def my_handler(sender, instance=False, **kwargs):
t = Test.objects.filter(id=instance.id)
t.blah = 'hello'
t.save()
class Test(models.Model):
title = models.CharField('title', max_length=200)
blah = models.CharField('blah', max_length=200)
post_save.connect(my_handler, sender=Test)
Таким образом, предполагается, что в поле 'extra' после каждого сохранения должно быть установлено значение 'hello'. Правильный? Но это не работает.
Любые идеи?
save
для выполнения; self.blah= 'hello'; super( Test, self ).save( *args, **kw )
? Что не так с переопределениемsave()
? - person S.Lott   schedule 29.10.2009.update()
вместоsave()
. Чтобы избежать петли. Поскольку update () не вызывает сигнал post_save. - person Brandon Bertelsen   schedule 26.02.2013