zoukankan      html  css  js  c++  java
  • 提交表单----静态文件

    静态文件----提交表单
    
    本例在static目录中建立了一个from.html静态页面,该页面有一个<form>标签,用于向服务端提交POST请求,然后在post.py脚本文件中添加一个路由方法,用于处理HTTP POST请求,
    
    并返回请求字段值。
    
    本实例涉及一个CSRF校验的问题,CSRF是Cross-site request forgery(跨站请求伪造)的缩写,CSRF校验就是为了防止CSRF攻击进行的校验。由于CSRF校验与本例无关。
    
    所以使用@csrf_exempt装饰器将CSRF校验关闭
    
    
    1、在Firstdjango工程项目中手工创建一个文件名为static
    
    
    2、配置静态目录
    
    在setting.py中找到STATIC_URL配置如下:
    
    STATIC_URL = '/static/'
    STATICFILES_DIRS = (
      os.path.join(BASE_DIR,"static"),
    )
    
    
    3、添加APP包名(项目名称)
    
    在setting.py中找到INSTALLED_APPS添加App的包名(也就是项目名称)
    
    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'Firstdjango',            #新添加的APP名(项目名称)
    ]
    
    
    4、在工程的Firstdjango目录中建立一个post.py脚本文件,然后在post.py文件中添加如下内容:
    
    from django.http import HttpResponse
    from django.views.decorators.csrf import csrf_exempt
    #禁止CSRF校验
    @csrf_exempt
    def myPost(request):
        # 从HTTP POST请求中获取user字段
        user=str(request.POST.get('user'))
        # 从HTTP POST 请求中获取age字段值
        age=str(request.POST.get('age'))
        result='<h2>name:<font color="red">' + user +'</font></h2>'
        result+='<h2>age:<font color="blue">' + age +'</font></h2>'
        return HttpResponse(result)
    
    
    
    5、然后在Firstdjango目录中找到urls.py脚本文件,用下面的代码代替urls.py脚本里面的内容:
    
    from django.conf.urls import url
    from .import post
    urlpatterns=[
        #下面代码是本例添加的路由方法与正则表达式的映射
        url(r'^post$',post.myPost),
    ]
    
    
    
    6、在静态文件static目录中中创建一个from.html静态页面,添加内容如下:
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Form</title>
    </head>
    <body>
        <!-- 用于提交POST请求的Form表单-->
        <form action="/post" method="post">
            User:<input name="user"/><br>
            Age:<input name="age"/><br>
            <input type="submit" value="提交">
        </form>
    </body>
    </html>
    
    
    7、启动django工程
    
    
    8、浏览器访问
    
    http://127.0.0.1:8000/static/form.html
    



    9、添加静态目录static、静态文件form.html位置如下图所示:





  • 相关阅读:
    Java实现 蓝桥杯VIP 算法提高 交换Easy
    Java实现 蓝桥杯VIP 算法提高 多项式输出
    Java实现 蓝桥杯VIP 算法提高 多项式输出
    Java实现 蓝桥杯VIP 算法提高 多项式输出
    Java实现 蓝桥杯VIP 算法提高 多项式输出
    Java实现 蓝桥杯VIP 算法提高 多项式输出
    Java实现 蓝桥杯VIP 算法训练 矩阵乘方
    QT中给各控件增加背景图片(可缩放可旋转)的几种方法
    回调函数实现类似QT中信号机制
    std::string的Copy-on-Write:不如想象中美好(VC不使用这种方式,而使用对小字符串更友好的SSO实现)
  • 原文地址:https://www.cnblogs.com/effortsing/p/10398084.html
Copyright © 2011-2022 走看看