|
|
|
|
@ -4,25 +4,46 @@ from django.urls import re_path
|
|
|
|
|
from . import views
|
|
|
|
|
from .forms import LoginForm
|
|
|
|
|
|
|
|
|
|
# 定义应用的命名空间,用于URL反向解析
|
|
|
|
|
# 在模板中使用如:{% url 'accounts:login' %}
|
|
|
|
|
app_name = "accounts"
|
|
|
|
|
|
|
|
|
|
urlpatterns = [re_path(r'^login/$',
|
|
|
|
|
views.LoginView.as_view(success_url='/'),
|
|
|
|
|
name='login',
|
|
|
|
|
kwargs={'authentication_form': LoginForm}),
|
|
|
|
|
re_path(r'^register/$',
|
|
|
|
|
views.RegisterView.as_view(success_url="/"),
|
|
|
|
|
name='register'),
|
|
|
|
|
re_path(r'^logout/$',
|
|
|
|
|
views.LogoutView.as_view(),
|
|
|
|
|
name='logout'),
|
|
|
|
|
path(r'account/result.html',
|
|
|
|
|
views.account_result,
|
|
|
|
|
name='result'),
|
|
|
|
|
re_path(r'^forget_password/$',
|
|
|
|
|
views.ForgetPasswordView.as_view(),
|
|
|
|
|
name='forget_password'),
|
|
|
|
|
re_path(r'^forget_password_code/$',
|
|
|
|
|
views.ForgetPasswordEmailCode.as_view(),
|
|
|
|
|
name='forget_password_code'),
|
|
|
|
|
]
|
|
|
|
|
# URL配置列表,定义所有用户账户相关的路由
|
|
|
|
|
urlpatterns = [
|
|
|
|
|
# 登录路由 - 使用正则表达式匹配以login/结尾的URL
|
|
|
|
|
re_path(r'^login/$',
|
|
|
|
|
# 使用基于类的视图,登录成功后重定向到首页
|
|
|
|
|
views.LoginView.as_view(success_url='/'),
|
|
|
|
|
name='login', # URL名称,用于反向解析
|
|
|
|
|
kwargs={'authentication_form': LoginForm}), # 传递自定义登录表单类
|
|
|
|
|
|
|
|
|
|
# 注册路由 - 使用正则表达式匹配以register/结尾的URL
|
|
|
|
|
re_path(r'^register/$',
|
|
|
|
|
# 注册视图,注册成功后重定向到首页
|
|
|
|
|
views.RegisterView.as_view(success_url="/"),
|
|
|
|
|
name='register'), # URL名称
|
|
|
|
|
|
|
|
|
|
# 登出路由 - 使用正则表达式匹配以logout/结尾的URL
|
|
|
|
|
re_path(r'^logout/$',
|
|
|
|
|
# 登出视图,处理用户退出登录
|
|
|
|
|
views.LogoutView.as_view(),
|
|
|
|
|
name='logout'), # URL名称
|
|
|
|
|
|
|
|
|
|
# 账户操作结果页面 - 使用path匹配精确路径
|
|
|
|
|
path(r'account/result.html',
|
|
|
|
|
# 使用函数视图显示账户操作结果(如注册成功、密码重置成功等)
|
|
|
|
|
views.account_result,
|
|
|
|
|
name='result'), # URL名称
|
|
|
|
|
|
|
|
|
|
# 忘记密码页面 - 使用正则表达式匹配以forget_password/结尾的URL
|
|
|
|
|
re_path(r'^forget_password/$',
|
|
|
|
|
# 忘记密码视图,显示密码重置页面
|
|
|
|
|
views.ForgetPasswordView.as_view(),
|
|
|
|
|
name='forget_password'), # URL名称
|
|
|
|
|
|
|
|
|
|
# 忘记密码验证码接口 - 使用正则表达式匹配以forget_password_code/结尾的URL
|
|
|
|
|
re_path(r'^forget_password_code/$',
|
|
|
|
|
# 处理忘记密码的邮箱验证码发送和验证
|
|
|
|
|
views.ForgetPasswordEmailCode.as_view(),
|
|
|
|
|
name='forget_password_code'), # URL名称
|
|
|
|
|
]
|