Пользователь в моем веб-интерфейсе может отправить произвольную вложенную строку запроса по идентификатору моей модели следующим образом:
querystring="(driver = 1 AND routes = 3) OR ( driver = 2 AND weather = 1 )"
Я хочу использовать комплексную функцию Q djangos для запроса этой строки в серверной части, что означает, что янужно превратить querystring в что-то вроде
criterion = \
(Q(detail__drivers=1) & Q(routes =3) ) | (Q(detail__driver=2) & Q(detail__weather=1) )
, чтобы можно было фильтровать, используя
self.queryset.filter(criterion)
Но как я могу автоматически перевести строку в критерийпри сохранении структуры скобок?