obj = Info(name= sub,question=response_dict["question"])
obj.save()

После сохранения данных как обновить другое поле этой же таблицы

obj.err_flag=1
obj.update()//Will this work
1
Hulk 7 Авг 2010 в 16:33

3 ответа

Лучший ответ

Просто сохраните этот экземпляр:

obj.some_field = some_var
obj.save()

Django автоматически знает, когда UPDATE или INSERT использовать ваш экземпляр в базе данных.
Это объясняется в Документы Django.

4
Geradeausanwalt 7 Авг 2010 в 13:18

Если в вопросе вы хотите сказать same object или same row, где вы говорите same table, то если вы сделаете это

obj = Info(name= sub,question=response_dict["question"])
obj.save()

А затем через несколько строк вам нужно сделать это

obj = Info.objects.get(name=sub)
obj.err_flag=1
obj.save()

Тогда obj = Info.objects.get(name=sub) не нужен.

Вы просто делаете

obj = Info(name= sub,question=response_dict["question"])
obj.save()
#
#do what you want to do, check what you want to check
#
obj.err_flag=1
obj.save()
2
chefsmart 7 Авг 2010 в 16:16
obj = Info(name=sub,question=response_dict["question"])
obj.save()

А потом вы захотите получить и обновить его (я предполагаю, что имя является уникальным идентификатором):

obj = Info.objects.get(name=sub)
obj.err_flag=1
obj.save()
3
Brian Stoner 7 Авг 2010 в 13:28