У меня есть Django QuerySet
, и я хочу получить из него объект Q
. (т. е. содержит тот же запрос, что и этот набор запросов.)Django: Извлечение объекта `Q` из` QuerySet`
Возможно ли это? И если да, то как?
У меня есть Django QuerySet
, и я хочу получить из него объект Q
. (т. е. содержит тот же запрос, что и этот набор запросов.)Django: Извлечение объекта `Q` из` QuerySet`
Возможно ли это? И если да, то как?
Нет, но сначала вы можете создать объект Q и использовать его; альтернативно, создайте свой запрос как dict и передайте его вашему методу фильтрации и Q-объекту.
Это не то, о чем вы просили, но вы можете извлечь sql из набора запросов, обратившись к члену запроса. Например:
x = somequeryset.query
Тогда вы можете использовать это на новом объекте queryset для восстановления исходного набора запросов. Это может работать лучше при сохранении таких вещей, как «значения», которые определены для набора запросов. Определенный х легко хранить. Я использовал это в прошлом, чтобы сохранить созданные пользователем запросы/поисковые запросы, которые затем выполняются ежедневно с результатами, отправленными пользователю по электронной почте.
Полезная информация, спасибо. Все еще не так хорошо, как 'Q', потому что вы не можете использовать' & ',' | 'и' ~ 'на нем, но все же хорошо знать. –