python - 登录查看成功

标签 python django

我目前正在使用我的 Django 身份验证应用程序。我的目标是一旦用户成功登录我想将其重定向到我的代码显示自定义消息的索引页面:

messages.success(request, 'Login Successful', extra_tags='alert alert-dark')

我的问题是我没有设法在我的 views.py 中“访问”LoginView。 我阅读了有关 SuccessMessageMixin 的信息,但此 LoginView 无法正常工作(未找到模板):

class LoginView(auth_views.LoginView):
    template_name = "accounts/login.html"

你知道如何解决这个问题吗?

只要我在我的 urls.py 中包含 template_name 它就可以工作,但我不能在那里添加成功消息 mixin。

网址.py

from django.urls import path
from django.contrib.auth import views as auth_views

from . import views

app_name = 'accounts'

urlpatterns = [
    path('login/', auth_views.LoginView.as_view(template_name='accounts/login.html'), name='login'),
]

最佳答案

您有一个自定义 LoginView,但在 urls.py 中您调用了 auth_views.LoginView

要调用你应该做的自定义 View

from <module_name>.views import LoginView

urlpatterns = [
    path('login/', LoginView.as_view(), name='login'),
]

最好为您的自定义 View 取一个不同的名称,即CustomLoginView

关于python - 登录查看成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48268338/

相关文章:

python - 如何使我的 txt 文件将我想要的每个数字放入行中

python - 将图像数据字符串 (str) 转换回字节

python - 如何在 python (Django) 中取消设置(删除)POST 变量

html - 在html表格中显示自增序列号

django - 调整 postgresql(使用 django 快速读取)

python - 如何在数据框中选择 n-1 列

Python 命名约定指南

python - 使用pywinauto连接远程桌面

python - 如何在 python 中使用 numpy 和 matplotlib 绘制二维数据的最大和最小特征向量?

python - Heroku 上 Django 应用程序中的 SMTP-Sendgrid 电子邮件 : working locally, 错误 SMTPServerDisconnected