Как получить значения словаря в шаблоне Django без цикла for

Я пытаюсь получить значение словаря в шаблоне Django. Я не уверен, возможно ли это или нет.

Вот следующий шаблон:

{{ active_session.log.values }}

Вот его распечатка:

<QuerySet [{'id': 318, 'log_order': 1, ......other repeated keys and values}>

Мой вопрос, как можно получить все значения log_order, проходя через цикл for в шаблоне, зная, что это отношение многие ко многим.

Вот модели:

class Log(models.Model):
    ...................................
    log_order = models.IntegerField(validators=[MinValueValidator(1)],blank=True, null=True)

class ActiveSession(models.Model):
    log = models.ManyToManyField(Log, related_name='savedlogs')
    ..................................

вот виды:

class workout_details(DetailView):
    model = Workout
    template_name = 'my_gym/start_workout.html'
    context_object_name = 'workout'

    def get_context_data(self, **kwargs):
        exercises = Exercise.objects.filter(workout_id=self.object)
        p = Log.objects
        active_session = ActiveSession.objects.get(id=ActiveSession.objects.last().id)
        context = super().get_context_data(**kwargs)
        context['exercises'] = exercises
        context['form'] = LogForm()
        context['p'] = p
        context['active_session'] = active_session
        return context

В нескольких ответах говорится, что можно создать функцию поиска, но у меня выдает ошибку Failed lookup for key [log_order] in <django.db.models.fields.related_descriptors.create_forward_many_to_many_manager.<locals>.ManyRelatedManager object at 0x046FE4A8>

Вот функция в моделях:

@register.filter(name='lookup')
def lookup(value, arg):
    value_dict = ast.literal_eval(value)
    return value_dict.get(arg)

Вот шаблон:

{{ mydict|lookup:active_session.log.log_order }}
Вернуться на верх