Django cannot import login from django.contrib.auth.views

前端 未结 5 1683
长发绾君心
长发绾君心 2020-12-01 10:38

I try to build a login function for my page. To edit the urls.py as followed, it keeps printing this:

cannot import name \'login\' from \'django.contrib.

5条回答
  •  抹茶落季
    2020-12-01 11:29

    Can try this to create a login form

    # views page
    from django.contrib.auth.forms import UserCreationForm
    from django.contrib.auth import login
    from django.contrib import messages
    
    def loginPage(request):
        if request.method == "POST":
            username = request.POST.get("username")
            password = request.POST.get("password")
            user = authenticate(request, username=username, password=password)
            if user is not None:
                login(request, user)
                return redirect('home')
            else:
                messages.info(request, 'Username or Password is incorrect')
        context = {}
        return render(request, 'accounts/login.html', context)
    
    #urls
    urlpatterns = [
    path('login/', views.loginPage, name='login'),,
    ]
    

提交回复
热议问题