I am doing a social network, I have one profile template for all users, how to check a guest or a page owner entered the page, {% if profile.user.username == None%} tried to write like this in html but it works strangely.For users, I use the Profile model
class Profile(models.Model):
first_name = models.CharField(max_length=200, blank=True)
last_name = models.CharField(max_length=200, blank=True)
user = models.OneToOneField(User, on_delete=models.CASCADE)
email = models.EmailField(max_length=150, blank=True)
country = models.CharField(max_length=100, blank=True)
avatar = models.ImageField(default = 'avatar.svg', upload_to = 'avatars/%Y/%m/%d', blank=True)
friends = models.ManyToManyField(User, blank=True, related_name='friends')
update = models.DateTimeField(auto_now=True)
created = models.DateTimeField(auto_now_add=True)
def __str__(self):
return f"{self.user}-{self.created}"
@receiver(post_save, sender=User)
def update_user_profile(sender, instance, created, **kwargs):
if created:
Profile.objects.create(user=instance)
instance.profile.save()
Advertisement
Answer
try this
{% if profile.user == request.user %}
# i am user
{% else %}
# i am guest
{% endif %}
or
{% if profile.user.username == request.user.username %}
# i am user
{% else %}
# i am guest
{% endif %}