首页 > 解决方案 > 需要登录 Django 基于类的视图

问题描述

完全是初学者的问题。

我在我的应用 Foo 中有这个视图:

class PaymentsView(LoginRequiredMixin, CreateView):

    login_url = '/login/'
    redirect_field_name = 'redirect_to'

    # -- Omitted ...

我已经阅读了 django 文档,但我没有看到将我的文件“login.html”放在哪里以及如何设置 url。当我运行代码时显示 404 错误。

标签: djangotemplatesurlloginrequired

解决方案


设置login_url将重定向到项目中的 URL,然后由 URL Dispatcher 处理。您需要在 URLConf 中包含指向该 URL 的路径,就像使用任何其他 URL 一样:

网址.py:

from django.urls import path

from . import views

urlpatterns = [
    path('login/', views.login),
]

然后,您需要编写一个视图来处理登录。Django 提供了预先编写好的视图和 URL 模式来处理它的登录系统


推荐阅读