Я хочу, чтобы при нажатии на профиль пользователь переходил в profile.html
я хочу чтобы пользователь при нажатии на профиль переходил в profile.html но проблема не решается
--------- путь
path('home', views.home, name="home"),
path('profile/<int:id>', views.profile_views, name="profile_views")
-------- модели
class profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
music = models.CharField(max_length=50)
skils = models.CharField(max_length=50)
search = models.CharField(max_length=50)
posts = models.CharField(max_length=50)
boi = models.TextField()
img = models.ImageField(upload_to="profile-img")
def __str__(self):
#return self.user or 'User'
return str(self.id)
def create_profile(sender, **kwargs):
if kwargs['created']:
user_profile = profile.objects.create(user=kwargs['instance'])
post_save.connect(create_profile, sender=User)
------- просмотров
def home(request, id):
pro_id = profile.objects.get(id=id)
context = {'pro_id' : pro_id}
return render(request, 'main-frond.html')
def profile_views(request, id):
ff = profile.objects.get(id=id)
context = {'ff' : ff}
return render(request, 'profile.html', context)
------ html
<br>
<a href="{% url 'profile_views' pro_id.id %}">profile</a>
<br>
<hr>
{{request.user}}
<hr>
<a href="{% url 'login' %}" id="login-register" style="float: right;">Login</a>
<a href="{% url 'register' %}" id="login-register">Register</a>
где проблема
я хочу чтобы пользователь при нажатии на профиль переходил в profile.html но проблема не решается
path('home', views.home, name="home"),
не совпадает
def home(request, id):
Если это ваш путь:
path('home', views.home, name="home"),
path('profile/<int:id>', views.profile_views, name="profile_views")
views.py:
def home(request):
return render(request, 'main-frond.html')
Прежде всего, мы должны убедиться, что пользователь вошел в систему, а если он не вошел, то кнопка профиля на главной странице не отображается или сначала ведет на страницу входа, пользователь не может перейти к своему профилю, не войдя в систему, так как ссылка на профиль требует ID пользователя, поэтому она возвращает ошибку.
<<<Делайте проверку
Если pro_id.id не None : ... profil Else: Connectez-vous