@Horizone01

Делаю сайт на Django, необходимо сделать отдельные страницы для каждого пользователя. Как такое можно реализовать?

Я делаю сайт на Django с использованием авторизации allauth. Столкнулся с тем, что необходимо сделать отдельные страницы для каждого пользователя.
spoiler
На форуме видел похожий вопрос, но решение не было

У меня есть файлы:

urls.py
from django.urls import path
from .views import *

urlpatterns = [
    path('user/<int:pk>/', UserProfile.as_view(), name='user-profle'),
]


views.py
from django.shortcuts import render
from django.contrib.auth.models import User
from django.views.generic import DetailView

class UserProfile(DetailView):
    model = User
    template_name = 'HomePage/user-profile.html'


spoiler
Я использую DetailView т.к вроде бы он должен отвечать за вывод отдельных страниц


user-profile.html
<h3>{{ object.first_name }} {{ object.last_name }}</h3>

{% if object.is_active %}
<p>Online</p>
{% else %}
<p>Offline</p>
{% endif %}


При попытке перейти по пути: 127.0.0.1:8000/user/1 или тп, выводится ошибка:

Page not found (404)
Request Method: GET
Request URL: 127.0.0.1:8000/user/1
Raised by: HomePage.views.UserProfile

Не найден ни один пользователь, соответствующий запросу


Я не могу понять почему Django не может найти пользователя. Т.к я только начал изучать Django то могу предположить, что я что-то недоуказал во views.py, но что конкретно?
  • Вопрос задан
  • 549 просмотров
Решения вопроса 1
tumbler
@tumbler Куратор тега Django
бекенд-разработчик на python
А пользователь такой в БД есть?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы