Проблема с сравнением имени авторизованного пользователя и поля ForeignKey (Django) в шаблонизаторе
Необходимо сравнить имя авторизованного пользователя и поле ForeignKey
Если имя схоже с полем ForeignKey то вывести некую запись
как понимаю проблема заключается в том что я сравниваю две переменных разных типов. Пытался перевести переменные через фильтр |string шаблонизатора jinja, но не помогло.
Если отдельно выводить переменные user.get_username и el.author ,то на сайте они отображаются корректно в текстовом формате.
Подскажите в чем заключается моя ошибка при сравнении этих двух переменных
#Kabinet.html
{% extends 'main/layout.html' %}
{% block title %}Личный кабинет{% endblock %}
{% block content %}
<div class="features">
<h1>Личный кабинет</h1>
{% if orders %}
{% for el in orders %}
{% if user.get_username == el.author %}
<div class="alert alert-warning">
<h3>Заказ № {{ el }}</h3>
</div>
{% endif %}
{% endfor %}
{% else %}
<p>На данный момент заказов нет</p>
{% endif %}
<a href="{% url 'exit' %}"><button class="btn btn-info">Выйти из аккаунта</button></a>
</div>
{% endblock %}
#models.py
from django.db import models
class Order(models.Model):
number = models.CharField('Номер телефона', max_length=15)
soc = models.CharField('Социальная сеть', max_length=250)
full_text = models.TextField('Описание заказа')
author = models.ForeignKey( 'auth.User',on_delete=models.CASCADE, null=True)
def __str__(self):
return self.number
def get_absolute_url(self):
return f'/orders/{self.id}'
class Meta:
verbose_name='Заказ'
verbose_name_plural = 'Заказы'
#views.py
def kabinet(request):
orders=Order.objects.all()
return render(request, 'main/kabinet.html',{'orders':orders})