导入
创建用户应用
按照逐步说明创建一个新应用,该应用将允许用户注册和登录。
我们将创建一个新应用,允许用户注册和登录。
...
需要一个新应用来管理用户
创建新应用
要创建一个新的 Users 应用,请在终端窗口中执行以下命令。我们之前创建 Listings 应用时也使用过类似的命令。
1python manage.py startapp users
执行 startapp 命令后,将在主目录结构中创建一个名为 users 的新目录,其中包含一组新的 Python 文件。
...
新 'Users' 应用的文件夹结构
我们需要创建一些额外的文件,类似于我们在 Listings 应用中使用的文件。请在 users 文件夹内创建以下文件:urls.py 和 forms.py。
在 users 文件夹内,创建一个名为 templates 的文件夹,然后在该文件夹中再创建一个名为 registration 的子文件夹,并在其中创建两个 HTML 文件:register.html 和 login.html。
新的文件夹结构应如下图所示。
...
更新后的 'Users' 文件夹结构
注意: 如果你使用 Django 内置的身份验证系统,请确保有一个名为 registration 的文件夹,并将所有 HTML 模板文件放入此文件夹中。这一点非常重要,因为 Django 默认视图仅在 registration 文件夹中查找模板,如果你将其命名为其他名称,Django 将无法找到你的模板。
在 settings.py 中注册应用
下一步是将新应用添加到 settings.py 文件中的 INSTALLED_APPS 配置部分。
1... 2 3INSTALLED_APPS = [ 4 'django.contrib.admin', 5 'django.contrib.auth', 6 'django.contrib.contenttypes', 7 'django.contrib.sessions', 8 'django.contrib.messages', 9 'django.contrib.staticfiles', 10 'listings', 11 'users' 12] 13...
添加新 Users 应用的 URL 路径
在继续之前,必须添加新 Users 应用的 URL 路径,如下代码所示。
1from django.contrib import admin 2from django.urls import path, include 3 4urlpatterns = [ 5 path('admin/', admin.site.urls), 6 path('', include('listings.urls')), 7 path('users/', include('users.urls')), 8]
每次创建新应用时,都必须添加其 URL 路径,以便 Django 能够找到它们。接下来我们先处理登录页面,然后再处理注册页面。