(Есть биржи, есть валюты, между ними устанавливается связь через многое ко многим, которое кастомное и содержит в вложенной таблице дополнительные значения в виде комиссий). Когда я получаю биржи, запрос происходит с prefetch_related с указанием на валюты. Запрос проходит, все хорошо, но мне нужно также получить для валют комиссии в этом же запросе, каким образом это можно передать?
Ну можно через аннотацию или изначально дергать среднюю таблицу
То есть через аннотацию мы в таблице валют добавим поля из промежуточной таблицы?
По идее префетч уже должен взять обе таблицы, вопрос в том как удобно обратиться к данным из средней. Насколько помню там есть варианты инстанс.промежуточная_модель_set.all() или инстанс.связанная_модель.through.all()
burse.relation_set.extra(select={'purchase_commission': 'purchase_commission', 'sale_commission': 'sale_commission'})
Обсуждают сегодня