Я хотел бы сохранить критерии запроса для базы данных для повторного использования.Как получить и/или сохранить критерии запроса в БД?
Так что, если у меня есть QuerySet как:
Client.objects.filter(state='AL')
# I'm simplifying the problem for readability. In reality I could have
# a very complex queryset, with multiple filters, excludes and even Q() objects.
Я хотел бы сохранить в БД не результаты QuerySet (т.е. отдельные клиентские записи, имеющая государственное соответствие поля «AL») ; но сам запрос (т. е. критерии, используемые при фильтрации модели клиента).
Конечной целью является наличие «сохраненного фильтра», который может быть прочитан из БД и использован несколькими приложениями django.
Сначала я думал, что смогу сериализовать запрос и сохранить его. Но сериализация набора запросов фактически выполняет запрос, а затем я получаю статический список клиентов в Алабаме во время сериализации. Я хочу, чтобы список был динамическим (т. Е. Каждый раз, когда я читал набор запросов из БД, он должен выполнять и получать самый последний список клиентов в Алабаме).
Редактировать: В качестве альтернативы можно ли получить список фильтров, применяемых к набору запросов?
Что-то вроде:
qs = Client.objects.filter(state='AL')
filters = qs.getFilters()
print filters
{ 'state': 'AL' }
Хотели бы вы рассказать о том, как это касается проблемы получения критериев запроса и сохранения их в базе данных, а затем восстановления m база данных и ее выполнение? – cethegeek