python学习之--Django--Get and Post
来源:互联网 发布:淘宝内部优惠券推广员 编辑:程序博客网 时间:2024/05/22 14:14
1.
首先创建一个登陆界面 login.html
<span style="font-family:SimSun;font-size:12px;"><span style="font-family:KaiTi_GB2312;font-size:12px;">{% extends "base.html" %}{% block mainbody %}<form action="/app1/login/" method="post">{% csrf_token %}username:<input type="text" name="username"> <br>passowrd:<input type="password" name="password"> <br><input type="submit" value="Submit"></form>{{ username }} <br>{{ password }} <br>{% endblock %}</span></span>在 views.py中添加
<span style="font-family:SimSun;font-size:12px;"><span style="font-family:KaiTi_GB2312;font-size:12px;">def login_page(request):return render(request, 'login.html')</span></span>
在urls.py中添加
<span style="font-family:SimSun;font-size:12px;"><span style="font-family:KaiTi_GB2312;font-size:12px;">url(r'^login_page/', 'app1.views.login_page'),</span></span>
这样就可以通过localhost:8000/app1/login_page/
访问登陆界面
接着编写login函数用来处理登陆动作,在urls.py上配置路径
<span style="font-family:SimSun;font-size:12px;"><span style="font-family:KaiTi_GB2312;font-size:12px;">def login(request):context = {}context.update(csrf(request))if request.POST:username = request.POST['username']password = request.POST['password']context['username'] = usernamecontext['password'] = passwordif username=='viease' and password=='123456':return render(request, 'login.html', context)else:student_list = Student.objects.all()return render(request, 'template.html', { 'student_list' : student_list})</span></span>
成功登陆会显示如下:
不然跳转到template.html
Get方式,修改method为get
去掉
{% csrf_token %}
from django.core.context_processors import csrf
context = {}
context.update(csrf(request))
首先第一个问题为什么post方法需要添加 csrf ?
是Django跨站伪造请求的保护措施。
第二个问题get和post的区别是什么?
Http定义了与服务器交互的不同方法,最基本的方法有4种:GET,POST,PUT,DELETE。URL全称是资源描述符,可以认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查, 改, 增, 删。所以GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。GET方法是通过改写URL的方式实现的。GET的数据利用URL?变量名=变量值的方法传输。可以用来用于传输一些不重要的数据。POST方法用于从客户端向服务器提交数据。使用POST方法时,URL不再被改写。数据位于http请求的主体。
1 0
- python学习之--Django--Get and Post
- django学习4 get post 表单
- Django中的GET和POST
- Get and Post
- Get and Post
- post and get
- curl post and get
- GET and POST
- Python SOAP API, HTTP POST and HTTP GET
- Ajax学习之Get与Post
- HTTP学习之POST 与 GET
- 学习笔记之--post/get/put
- HTTP学习之POST 与 GET
- ajax学习笔记之get&post
- JavaWeb学习之Get请求和POST
- python框架之django学习
- python学习之--Django初探
- Python学习之Django(1)
- 无法启动此程序,因为计算机中丢失MSVCP120D.dll
- js各种框架和主要用途方向.
- java中的url 编码与解码
- 关于类的结构图
- 5亿个数找中位数
- python学习之--Django--Get and Post
- 求解字符串间最短距离(字符串相似度)
- hihoCoder hiho一下 第四十二周:骨牌覆盖问题·二
- 使用Session防止表单重复提交
- 反渗透设备:反渗透设备在运行准备
- 解决 vs2010问题 error MSB8008: 指定的平台工具集(v110)未安装或无效
- iOS支付宝支付步骤
- win7绑定host
- sql System.Data.SqlClient.SqlError: 无法覆盖文件 'C:\Program Files\Microsoft SQL Server\MSSQL\data\itsm_Da