首页 > 解决方案 > 编辑 django 登录视图的麻烦

问题描述

我想将 2FA 添加到我的 django 应用程序中。我找到了这个库,但有些东西我不明白。在他们的示例 django 应用程序中,他们使用模块的登录视图,这意味着示例应用程序没有自己的视图,那么如何将 2fa 模块集成到我自己的应用程序中?

这里有两种可能的方法:

1)是的,我可以只使用他们的视图,但问题是将来我想在我的登录中添加其他功能,所以问题是:如果我使用他们的登录视图,我该如何编辑视图?

2)我可以将这两个 fa 集成到我已经存在的登录视图中(见下文),但问题是我不知道该怎么做。

有什么建议吗?

这是我的登录视图目前的样子:

def login_request(request):

    if request.method == "POST":
            form = AuthenticationForm(request, data=request.POST)

            if form.is_valid():
                username = form.cleaned_data.get('username')
                password = form.cleaned_data.get('password')
                user = authenticate(username=username, password=password)

                if user is not None:
                    login(request, user)
                    messages.info(request, f"You are now logged in as {username}")
                    return redirect("example:home")
                else:
                    messages.error(request, "Invalid username or password")

            else:
                messages.error(request, "Invalid username or password")

标签: pythondjangopython-3.xdjango-formsdjango-views

解决方案


推荐阅读