Поскольку вы пытаетесь сделать это для отображения, я, вероятно, превратил бы его в шаблонный фильтр ...
@register.filter
def highest_score(user, game):
scores = Score.objects.filter(game=game, user=user).order_by("val")
return scores[0]
Вам понадобится проверить некоторые ошибки втам, очевидно.Например, вы захотите убедиться, что набор запросов "scores" действительно имеет результаты.
Но затем вы можете использовать его в таком шаблоне:
<p>{{ user }}'s top score: {{ user|highest_score:game }}</p>