Django请求与表单提交

Django请求与表单提交

Django请求

页面默认的请求方式都是get请求,request是传递到视图的请求,里面包含请求的各种参数:

常用的请求方式:delete,updata,put,get,post。

Get:默认是get请求,请求数据以明文形式放在路由上,get的格式是以?开头,键等于值的形式,以&来分割键值对,通常用于和服务器获取资源。

Post:请求数据隐藏发送,安全系数更高。通常用于向服务器提交资源。

​ Django默认提供了处理get和post请求的参数,其他类型的请求需要使用django的视图类来自定义。可以通过dir来查看request的方法

request.COOKIES:接收cookie的方法
request.GET:获取get请求数据的方法
request.POST:获取post请求数据的方法
request.FILES:获取文件上传请求数据的方法
request.method:获取请求的方法
request.path:请求的路径
request.get_raw_uri:请求的url
request.META请求的详细参数
request.META.OS请求端系统
request.META.HTTP_USER_AGENT用户请求头,返回请求浏览器版本
request.META.HTTP_HOST请求的主机
request.META.HTTP_REFERER请求的来源

表单数据提交

on 提交的地址,默认是当前路由。

Method 提交的方法,默认是get

Input 是表单的元素

Name参数用来做传参的值

Submit会自动提交当前表单的数据

模型类models
from django.db import models

# Create your models here.

class FromExample(models.Model):
    name = models.TextField(max_length=32)
    password = models.TextField(max_length=32)

视图
from django.shortcuts import render,render_to_response
from Formapp.models import *

# Create your views here.

def formexample(request):

    # 获得表单填写的数据
    data = request.GET
    name = data.get('username','未知')
    password = data.get('password','未知')

    # 将页面上填写的数据提交到数据库,保存数据
    user = FromExample()
    user.name = name
    user.password = password
    user.save()
    # 返回添加后的所有数据
    users = FromExample.objects.all()
    return render_to_response("formexample.html",locals())
# 删除
def delete_user(request):
    # 获取id
    id = int(request.GET.get("id"))
    # 删除id
    user = FromExample.objects.get(id=id)
    user.delete()
    # 返回删除后的数据
    users = FromExample.objects.all()
    return render_to_response('formexample.html',locals())

页面HTML
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="/fe/" method="">
    <p>
        <label >用户名:</label>
        <input type="text" name="username">
    </p>
    <p>
        <label>密  码:</label>
        <input type="password" name="password">
    </p>
    <p>
        <input type="submit" value="提交">
    </p>
    {% for u in users %}
        <p>
              {{ u.name }} : {{ u.password }}
            <a href="/du/?id={{ u.id }}">删除</a>
        </p>
    {% endfor %}

</form>
</body>
</html>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值