Сложные запросы через 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 самостоятельно и скорее использовать необработанные запросы. Так что я бы сказал, что необработанный запрос является альтернативой.

Другие вопросы по тегам