|
|
|
|
@ -4,25 +4,41 @@ from django.urls import re_path
|
|
|
|
|
from . import views
|
|
|
|
|
from .forms import LoginForm
|
|
|
|
|
|
|
|
|
|
app_name = "accounts"
|
|
|
|
|
app_name = "accounts" #ZXY: 应用命名空间,用于反向解析URL时避免冲突
|
|
|
|
|
|
|
|
|
|
urlpatterns = [re_path(r'^login/$',
|
|
|
|
|
views.LoginView.as_view(success_url='/'),
|
|
|
|
|
name='login',
|
|
|
|
|
kwargs={'authentication_form': LoginForm}),
|
|
|
|
|
"""
|
|
|
|
|
账户模块的URL配置
|
|
|
|
|
定义用户相关的所有页面路由和对应的视图处理函数
|
|
|
|
|
"""
|
|
|
|
|
urlpatterns = [
|
|
|
|
|
#ZXY: 登录页面 - 使用正则表达式匹配路径
|
|
|
|
|
re_path(r'^login/$',
|
|
|
|
|
views.LoginView.as_view(success_url='/'), #ZXY: 类视图,登录成功后跳转到首页
|
|
|
|
|
name='login', #ZXY: URL名称,用于反向解析
|
|
|
|
|
kwargs={'authentication_form': LoginForm}), #ZXY: 传递额外的参数到视图
|
|
|
|
|
|
|
|
|
|
#ZXY: 注册页面
|
|
|
|
|
re_path(r'^register/$',
|
|
|
|
|
views.RegisterView.as_view(success_url="/"),
|
|
|
|
|
views.RegisterView.as_view(success_url="/"), #ZXY: 注册成功后跳转到首页
|
|
|
|
|
name='register'),
|
|
|
|
|
|
|
|
|
|
#ZXY: 退出登录
|
|
|
|
|
re_path(r'^logout/$',
|
|
|
|
|
views.LogoutView.as_view(),
|
|
|
|
|
views.LogoutView.as_view(), #ZXY: 退出登录视图
|
|
|
|
|
name='logout'),
|
|
|
|
|
|
|
|
|
|
#ZXY: 账户操作结果页面 - 使用path函数,更现代的URL定义方式
|
|
|
|
|
path(r'account/result.html',
|
|
|
|
|
views.account_result,
|
|
|
|
|
views.account_result, #ZXY: 函数视图
|
|
|
|
|
name='result'),
|
|
|
|
|
|
|
|
|
|
#ZXY: 忘记密码页面
|
|
|
|
|
re_path(r'^forget_password/$',
|
|
|
|
|
views.ForgetPasswordView.as_view(),
|
|
|
|
|
views.ForgetPasswordView.as_view(), #ZXY: 密码重置表单视图
|
|
|
|
|
name='forget_password'),
|
|
|
|
|
|
|
|
|
|
#ZXY: 获取忘记密码验证码
|
|
|
|
|
re_path(r'^forget_password_code/$',
|
|
|
|
|
views.ForgetPasswordEmailCode.as_view(),
|
|
|
|
|
views.ForgetPasswordEmailCode.as_view(), #ZXY: 验证码发送API
|
|
|
|
|
name='forget_password_code'),
|
|
|
|
|
]
|
|
|
|
|
|