如何使用Django、HTML根据用户的登录凭据将用户重定向到特定页面?

如何使用Django、HTML根据用户的登录凭据将用户重定向到特定页面?,django,Django,我正在尝试对Django网站进行编程,根据用户的登录凭据将用户重定向到自定义HTML页面。例如,我的第一个用户具有凭据-user=user1 pass=password1。我为他创建了一个单独的user1.html页面,所以当user1输入他的登录信息并按下login时,他会自动重定向到user1.html。当user2登录时,他将被重定向到user2.html等。我如何以基本且不复杂的方式启用它?我将在一个小的演示会话中使用它,因此,在这种情况下,代码安全性等并不重要 <!DOC

我正在尝试对Django网站进行编程,根据用户的登录凭据将用户重定向到自定义HTML页面。例如,我的第一个用户具有凭据-user=user1 pass=password1。我为他创建了一个单独的user1.html页面,所以当user1输入他的登录信息并按下login时,他会自动重定向到user1.html。当user2登录时,他将被重定向到user2.html等。我如何以基本且不复杂的方式启用它?我将在一个小的演示会话中使用它,因此,在这种情况下,代码安全性等并不重要

    <!DOCTYPE html>
    <html>
    <head>
        <title> XXXTechnologies </title>

    </head>
    <body>
        <form>

            <input type="button" value="Back" onclick="history.back()">
            <p> User Login Form </p>
            Username: <input id="username" type="text" name="username" >
            <br>
            Password: <input id="password" type="password" name="password" >
            <br><br>
            <input type="submit" name="Login" value="Login">


        </form>

    </body>
    </html>

myproject URL.py

from django.contrib import admin
from django.urls import path, include




urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('loginpage.urls')),

loginpage url.py

from django.urls import path

from . import views 

urlpatterns = [
    path('',views.index, name='loginpage'),

loginpage views.py

from django.shortcuts import render
from django.http import HttpResponse
from loginpage.models import customerlogin



def userview(request):
    if request.customerlogin.username == 'user1':
        return render(request, 'user1slug.html', {})
    elif request.cuatomerlogin.username == 'user2':
        return render(request, 'user2slug.html', {})
    else:
        return render(request, 'default.html', {})


def index(request):
    return render(request, 'login.html')

动态重定向,您可以在登录视图中执行,如下所示

def login(request):
    if request.method == "POST":
        username = request.POST['username']
        password = request.POST['password']
        user = auth.authenticate(username=username, password=password)
        if user is not  None:
            auth.login(request,user)
            return redirect('redirect_page')
        else:
            return redirect('login')
    else:
        return render(request, 'account/login.html')

在重定向页面中,您可以从后端获取动态数据。例如,如果它是一个配置文件页面,您可以将视图筛选为request.user,并将内容显示给登录的用户。

在您的views.py中,您可以编写如下代码:

def userview(request):
    if request.user.username == 'user1':
        return render(request, 'user1.html', {})
    elif request.user.username == 'user2':
        return render(request, 'user2.html', {})
    else:
        return render(request, 'default.html', {})

我尝试过这种方法,但我的登录页面没有重定向到其他页面。“用户”和“密码”字段变为空白,链接如下所示。我将附加我的项目和应用程序的url.py文件以及应用程序的views.py文件。我真的很感激你的帮助;我已经尝试过这个解决方案,我遇到了与上面解决方案相同的问题。链接更改为,用户、密码字段变为空白。没有别的事情发生
def userview(request):
    if request.user.username == 'user1':
        return render(request, 'user1.html', {})
    elif request.user.username == 'user2':
        return render(request, 'user2.html', {})
    else:
        return render(request, 'default.html', {})