Django - Доступ к булевому полю модели в html
Моя модель профиля имеет BooleanField
под названием teacher_status
, и я хочу дать пользователям с teacher_status
как True дополнительные возможности на сайте, и у меня проблемы с доступом к полю.
Модель профиля
class Profile(models.Model):
RANKS = [(f'{i}D', f'{i}K') for i in range(1,19)]
for i in range(1, 10):
RANKS.append((f'{i}D', f'{i}D'))
user = models.OneToOneField(User, on_delete=models.CASCADE)
image = models.ImageField(default='default.jpg', upload_to='profile_pics')
bio = models.CharField(max_length=225, blank=True, default='')
rank = models.CharField(max_length=3, default='18K', choices=RANKS)
teacher_status = models.BooleanField(default=False)
def __str__(self) -> str:
return f"{self.user.username}'s Profile"
def save(self, *args, **kwargs):
super(Profile, self).save(*args, **kwargs)
img = Image.open(self.image.path)
if img.height > 300 or img.width > 300:
img.thumbnail((300,300))
img.save(self.image.path)
Вот что я сделал в html:
{% if user.is_authenticated %}
{% if user.profile.teacher_status == true %}
<a class="btn btn-primary" href="{% url 'post-create' %}">Create Post</a>
{% endif %}
{% endif %}
Я думаю, что вы имеете в виду...
{% if user.is_authenticated %}
{% if user.profile.teacher_status %} # modify here...
<a class="btn btn-primary" href="{% url 'post-create' %}">Create Post</a>
{% endif %}
{% endif %}