Чтобы не перезаписывать переменную внутри for-l oop, вы делаете следующее:
list_ = []
for x in items:
list_.append(x.something)
context = {'object_list': list_}
Но вместо циклического перебора по allaplied
и получения id
для ScholarshipDetails
вы можете получить все сразу, например:
sch_ids = [x.scholarschip_id for x in allapplied.iterator()]
queryset = ScholarshipDetails.objects.filter(id__in=sch_ids)
Вам нужно меньше запросов к базе данных, и вы не перезаписываете свою переменную.
Более того: я полагаю, что ваши модели имеют OneToOne
-отношение, поэтому вы можете использовать select_related для непосредственного получения ваших данных при получении Applied_Scholarships
-инстанций. Тогда вы можете избавиться от второго filter
и просто использовать соответствующее поле для моделей деталей, например, applied.details
(точное название зависит от вашего дизайна модели).