Сложные запросы через Django обратные родовые отношения: возможно?
У меня есть класс Image
со следующим GenericRelation
:
properties = models.GenericRelation(Property)
Я пытаюсь получить все изображения с определенными свойствами, поэтому я делаю это:
Image.objects.filter(properties__type = "foo", properties__user = request.user)
Но это приводит к следующей ошибке:
DatabaseError: operator does not exist: integer = text
LINE 1: ...perties_property" ON ("myapp_image"."id" = "propert...
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.
Разве нельзя сделать запрос таким образом? Что я могу сделать в качестве альтернативы?
1 ответ
Если вам нужно выполнять очень сложные запросы по общим отношениям, я бы посоветовал вам написать sql самостоятельно и скорее использовать необработанные запросы. Так что я бы сказал, что необработанный запрос является альтернативой.