М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет318/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   314   315   316   317   318   319   320   321   ...   334
Байланысты:
Изучаем Python

settings.py
...
INSTALLED_APPS = [
# Мои приложения
'learning_logs',
'users',
# Приложения django по умолчанию.
...
]
...
Django включает приложение 
users
в общий проект.
Включение URL-адресов из users
Затем необходимо изменить корневой файл 
urls .py
, чтобы он включал URL-адреса, 
написанные для приложения 
users
:
urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('users/', include('users.urls')),
path('', include('learning_logs.urls')),
]
Добавим строку для включения файла 
urls .py
из 
users
. Эта строка будет соответ-
ствовать любому URL-адресу, начинающемуся со слова 
users
, например 
http://
localhost:8000/users/login/
.


Создание учетных записей пользователей
437
Страница входа
Начнем с реализации страницы входа. Мы воспользуемся стандартным представле-
нием 
login
, которое предоставляет Django, так что шаблон URL выглядит немного 
иначе. Создайте новый файл 
urls .py
в каталоге 
learning_log/users/
и добавьте в него 
следующий код:
urls.py
"""Определяет схемы URL для пользователей"""
from django.urls import path, include

app_name = 'users'
urlpatterns = [
# Включить URL авторизации по умолчанию.

path('', include('django.contrib.auth.urls')),
]
Сначала импортируется функция 
path
, а затем функция 
include
для включения ау-
тентификационных URL-адресов по умолчанию, определенных Django. Эти URL-
адреса по умолчанию включают именованные схемы, такие как 
'login'
и 
'logout'

Переменной 
app_name
присваивается значение 
'users'
, чтобы инфраструктура 
Django могла отличить эти URL-адреса от URL-адресов, принадлежащих другим 
приложениям 

. Даже URL-адреса по умолчанию, предоставляемые Djano, при 
включении в файл 
urls .py
приложения 
users
будут доступны через пространство 
имен 
users
.
Схема страницы входа соответствует URL 
http://localhost:8000/users/login/

. Когда 
Django читает этот URL-адрес, слово 
users
указывает, что следует обратиться 
к 
users/urls .py
, а 
login
сообщает о том, что запросы должны отправляться пред-
ставлению 
login
по умолчанию.
Шаблон login
Когда пользователь запрашивает страницу входа, Django использует свое пред-
ставление 
login
по умолчанию, но мы все равно должны предоставить шаблон для 
этой страницы. Аутентификационные представления по умолчанию ищут шаблоны 
в каталоге с именем 
registration
, поэтому вы должны создать этот каталог. В каталоге 
learning_log/users/
создайте каталог с именем 
templates
, а внутри него — еще один 
каталог с именем 
registration
. Вот как выглядит шаблон 
login .html
, который должен 
находиться в 
learning_log/users/templates/registration/
:
login.html
{% extends "learning_logs/base.html" %}
{% block content %}

{% if form.errors %}


438

Достарыңызбен бөлісу:
1   ...   314   315   316   317   318   319   320   321   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет