В django, как вернуть другой конец соединения "многие ко многим"?
У меня есть схема таблицы следующего вида.
Вы пользователь и хотите получить list других своих пользователей (в виде User моделей). У меня есть известное users.id значение.
SQL для этого запроса относительно прост: join users_B = entries_B.your_user и entries_B.other_user = users_B.id where entries_B.your_user = x.
Я не могу понять, как это сделать в django, если только я не обрабатываю данные по почте (использование prefetch_related считается постобработкой) или не создаю действительно странный запрос (что-то, включающее левые соединения и подзапросы). Есть ли способ получить список User обратно и чтобы сгенерированный SQL был простым и кратким?
Вы можете .filter(…) [Django-doc] с:
User.objects.filter(other_user_entries__your_user=myuser)
