Я хотел бы сохранить критерии запроса для БД для повторного использования.
Итак, если у меня есть запрос, например:
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.
Я хотел бы сохранить в БД не результаты набора запросов (то есть отдельные записи клиента, которые имеют поле состояния, соответствующее "AL" ); но сам запрос (т.е. критерии, используемые при фильтрации клиентской модели).
Конечная цель - иметь "сохраненный фильтр", который может быть прочитан из БД и использоваться несколькими приложениями django.
Сначала мне показалось, что я могу сериализовать запрос и сохранить его. Но сериализация набора запросов фактически выполняет запрос, а затем я получаю статический список клиентов в Алабаме во время сериализации. Я хочу, чтобы список был динамическим (т.е. Каждый раз, когда я читал запрос из БД, он должен выполнять и получать самый последний список клиентов в Алабаме).
Изменить: альтернативно, можно ли получить список фильтров, применяемых к набору запросов?
Что-то вроде:
qs = Client.objects.filter(state='AL')
filters = qs.getFilters()
print filters
{ 'state': 'AL' }