2017-02-21 10 views
-4

Предположите, в базе данных withdrawal=12. Если в функции я определяю набор запросов, например, OBJECT.objects.get(withdrawal=17), могу ли я сказать, что если я не сохраню функцию, вывод = 17, и как только я выхожу из функции, вывод снова станет равным 12?Queryset inside et ouside a

Спасибо!

+0

Ваш вопрос очень неясен, если вывод имеет значение 12 в дБ, тогда вы, очевидно, не сможет получить один со значением 17, – Sayse

ответ

1

OBJECT.objects.get(withdrawal=17) - это запрос и не изменяет данные, хранящиеся в вашей базе данных. Он вернет ровно один экземпляр типа OBJECT, если есть ровно один, иначе он поднимет ошибку.

Если вы хотите, чтобы получить все экземпляры типа OBJECT, где withdrawal установлено значение 17 затем использовать:

OBJECT.objects.filter(withdrawal=17) 

Если вы хотите изменить все экземпляры, которые имеют withdrawal из 12 иметь новое применение значение 17 :

OBJECT.objects.filter(withdrawal=12).update(withdrawal=17) 

См https://docs.djangoproject.com/en/1.10/ref/models/querysets/#update

Если вы хотите узнать больше о функциях и выражениях, которые позволяют более сложные запросы и изменения, ознакомьтесь с этой частью документации Django: https://docs.djangoproject.com/en/1.10/ref/models/expressions/

Смежные вопросы