Как вывести данные другого пользователя, кроме текущего в Django?
Делаю сайт на Django. В профиле пользователя я сделал вывод названия цвета, за который проголосовал пользователь и все отлично работает. Однако цикл выводит результат не конкретного пользователя, профиль которого мы просматриваем, а ВСЕХ проголосовавших. Как мне сделать так, чтобы был выведен результат определенного юзера?
models.py
class Choose(models.Model):
count_black = models.PositiveIntegerField(default=0, verbose_name="black")
count_white = models.PositiveIntegerField(default=0, verbose_name="white")
count_purple = models.PositiveIntegerField(default=0, verbose_name="purple")
voter = models.ForeignKey(User, null=True, blank=True, verbose_name='Пользователь',
on_delete=models.PROTECT)
views.py
class Profile(TemplateView):
template_name = 'registration/profile.html'
def get(self, request, username):
values = Choose.objects.all()
# получаем пользователя по username если он существует
user = get_object_or_404(User, username=username) # используем для вывода уникальной информации пользователя
# передаем его в шаблон как profile
return render(request, self.template_name, {'profile': user, "values": values})
profile.html:
{% for v in values %}
{% if v.count_black %}
<h2 class="text_color_light" align="center">
<p align="center">Voted for black</p>
</h2>
{% elif v.count_white %}
<h2 class="text_color_light" align="center">
<p align="center">Voted for white</p>
</h2>
{% elif v.count_purple %}
<h2 class="text_color_light" align="center">
<p align="center">Voted for purple</p>
</h2>
{% endif %}
{% endfor %}
Да, благодаря profile
я могу вывести к примеру имя любого пользователя(profile.username
), но я не могу его подставить в цикл.
Что мне нужно исправить? Подскажите пожалуйста.