У меня есть модель в джанго, где у одного парня есть 1-6 раундов для каждого боя. Я пытаюсь получить все его бои, а потом сортирую их по кругу. Однако некоторые раунды пропускаются:Сопоставление списка с фильтрацией
results = self.objects.filter(boxer)
fight_results = []
for r in results:
result = sorted([x for x in results if x.fight_id == r.fight_id],key=lambda r: -r.round)
fight_results.append(result)
Что я делаю неправильно?
EDIT: Чтобы уточнить, для каждого боя есть 1 - 6 записей с одним и тем же fight_id, но разными круглыми номерами в базе данных. Я просто пытаюсь их получить, добавить в список и отсортировать по номеру раунда
Вы можете инвертировать это и магазин '{fight_id: (х, г)}'? – Daenyth
Я не уверен, что с вашим «ключом», я не думаю, что вы хотите использовать 'r' для этого. – 2rs2ts
Я думаю, вам понадобится немного объяснить схему базы данных и ожидаемые результаты. – cmd