В Django запросы выполняются на объекте модели, его хорошо задокументировано .Запросы или наборы запросов являются ленивыми, и когда они выполняются, они обычно возвращают список dict, каждый dict в списке содержит field
, за которым следует value
, например: [{'user':'albert','country':'US and A :) ','description':'my description'},....]
.
Все возможные источники,комбинации назначения для каждого пользователя?
Я думаю, вам придется использовать корабль обратной связи , чтобы сделать это, например:
my_joined_query = User.objects.values('user','source__country','source__description','destination__country')
обратите внимание, что я используюМеньшее имя регистра моделей Source
и Destination
, которые имеют отношение ForeignKey
с User
, это объединит все три таблицы и ознакомится с документацией.
Редактировать:
Чтобы выполнить внутреннее объединение, вам нужно будет указать запрос, это можно просто сделать, используя __isnull=False
в обратном названии модели:
my_innerjoined_query = User.objects.filter(source__isnull=False,destination__isnull=False)
Это должно сделать внутреннее объединение для всех таблиц.
Затем вы можете выбрать то, что вы хотите отобразить, используя values
как ранее.
надеюсь, чтопомогает.:)