您的位置:首页 > 编程语言 > Go语言

Django框架学习笔记(3.实现用户登录(下))

2017-12-16 18:44 831 查看
前面写到如果输入正确,跳转到百度

但我们希望输入正确之后跳转到自己的网页:

views.py:

from django.shortcuts import render
from django.shortcuts import redirect

def login(request):
error_msg = ""
if request.method == "POST":
user = request.POST.get("user", None)
pwd = request.POST.get("pwd", None)
if user == "yiqing" and pwd == "handsome":
return redirect("/home")
else:
error_msg = "用户名或密码错误"
return render(request, "login.html", {"error_msg": error_msg})

def home(request):
return render(request, "home.html")

新写的home.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body style="margin: 0">
<div style="height: 48px; background-color: blue"></div>
<div>
<table>
<tr>
<td>亦轻</td>
<td>男</td>
<td>6666@163.com</td>
</tr>
<tr>
<td>小广</td>
<td>女</td>
<td>66666@163.com</td>
</tr>
</table>
</div>
</body>
</html>

urls.py也修改下:

from django.contrib import admin
from django.urls import path
from cmdb.views import *
urlpatterns = [
path('admin/', admin.site.urls),
path('login/', login),
path('home/', home),
]

这次如果输入用户名和密码正确,则跳转到:



django还有一种特殊的操作:

views.py:

from django.shortcuts import render
from django.shortcuts import redirect

def login(request):
error_msg = ""
if request.method == "POST":
user = request.POST.get("user", None)
pwd = request.POST.get("pwd", None)
if user == "yiqing" and pwd == "handsome":
return redirect("/home")
else:
error_msg = "用户名或密码错误"
return render(request, "login.html", {"error_msg": error_msg})

USER_LIST = [
{"username": "yiqing", "email": "66666@126.com", "gender": "男"}
]
for index in range(20):
temp = {"username": "yiqing"+str(index), "email": "66666@126.com", "gender": "男"}
USER_LIST.append(temp)
def home(request):
return render(request, "home.html", {"user_list": USER_LIST})


home.html可以加入些代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body style="margin: 0">
<div style="height: 48px; background-color: blue"></div>
<div>
<table>
{% for row in user_list%}
<tr>
<td>{{ row.username }}</td>
<td>{{ row.gender }}</td>
<td>{{ row.email }}</td>
</tr>
{% endfor %}
</table>
</div>
</body>
</html>


然后访问home:



接下来想在网页中修改这些数据:

views.py修改:

from django.shortcuts import render
from django.shortcuts import redirect

def login(request):
error_msg = ""
if request.method == "POST":
user = request.POST.get("user", None)
pwd = request.POST.get("pwd", None)
if user == "yiqing" and pwd == "handsome":
return redirect("/home")
else:
error_msg = "用户名或密码错误"
return render(request, "login.html", {"error_msg": error_msg})

USER_LIST = [
{"username": "yiqing", "email": "66666@126.com", "gender": "男"}
]
def home(request):
if request.method == "POST":
u = request.POST.get("username")
e = request.POST.get("email")
g = request.POST.get("gender")
temp = {"username": u, "email": e, "gender": g}
USER_LIST.append(temp)
return render(request, "home.html", {"user_list": USER_LIST})


home.html也要做出相应的修改:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body style="margin: 0">
<div style="height: 48px; background-color: blue"></div>
<div>
<form action="/home/" method="post">
<input type="text" name="username" placeholder="用户名"/>
<input type="text" name="email" placeholder="邮箱"/>
<input type="text" name="gender" placeholder="性别"/>
<input type="submit" value="添加"/>
</form>
</div>
<div>
<table>
{% for row in user_list%}
<tr>
<td>{{ row.username }}</td>
<td>{{ row.gender }}</td>
<td>{{ row.email }}</td>
</tr>
{% endfor %}
</table>
</div>
</body>
</html>


这时候运行:



可是,当我们重新运行的时候,这些数据又消实了,

如果想保存下来,就要加入数据库了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐