1、请求和响应流程:
输入网址,请求页面(GET请求),通过路径找到对应的函数;
django创建HttpRequest对象,该对象包含了关于请求的原数据,经过处理,视图返回了一个HttpRequest对象;
2、GET与POST
GET:是从服务器获取原数据,不会更改数据库的数据和状态;
POST:携带数据发送到服务器,一般会更改服务器的数据;
GET是在URL中携带数据发送给数据库,POST不能再URL中看到参数;
3、代码简单说明如何使用GET、POST
创建登录页面(urls已经配置)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录</title>
</head>
<body>
<form action="{% url 'teacher:login' %}" method="get">
<p>用户名:<input type="text" placeholder="请输入用户名" name="username"></p>
<p>密 码:<input type="text" placeholder="请输入密码" name="psaaword"></p>
<p><input type="submit" value="登录"></p>
</form>
<form action="" method="post">
{% csrf_token %}
<p>用户名:<input type="text" placeholder="请输入用户名" name="username"></p>
<p>密 码:<input type="text" placeholder="请输入密码" name="psaaword"></p>
<p><input type="submit" value="登录"></p>
</form>
</body>
</html>
views中编写函数体
def login(request):
if request.method == 'GET':
return render(request, "teacher/login.html")
if request.method == 'POST':
username = request.POST.get("username")
password = request.POST.get("password")
if username == "admin" and password == "admin":
return redirect('teacher:index')
else:
return render(request, "teacher/login.html")
网友评论