Django Redirect from one app to another after login

Viewed 84

I want to redirect my userauth app to userarea app after login. The login happens in the view inside userauth. I want to go to userarea urls to acces my view there.

MainProject/urls.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('UserAuth.urls', namespace="nsUserAuth")),
    path('index/', include('UserArea.urls', namespace="nsUserArea")),
]

userauth/urls.py

urlpatterns = [
    path('', views.loginUser, name="urllogin"),
    path('logout/', views.logoutUser, name="urllogout"),
    path('register/', views.register, name="urlregister"),
    path('home/', views.home, name="urlhome"),
]

userauth/views.py

def loginUser(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('nsUserArea:urlUserHome')
            
        else:
            messages.info(request, 'User name or password is incorrect')

    return render(request, "Login.html")

userarea/urls.py

app_name = "UserArea"

    urlpatterns = [
        path('', views.IndexPage, name="urlUserHome"),
    ]

userarea/views.py

def IndexPage(request):
    return redirect(request, 'home.html')
0 Answers
Related