编程开发 购物 网址 游戏 小说 歌词 地图 快照 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 开发 租车 短信 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
移动开发 架构设计 编程语言 互联网 开发经验 Web前端 开发总结
开发杂谈 系统运维 研发管理 数据库 云 计 算 Java开发
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
  编程开发知识库 -> 开发经验 -> Django 入门 -> 正文阅读
 

[开发经验]Django 入门[第1页]

urls 改变问题 

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/1.10/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))

登录验证

views.py

from django.shortcuts import render
from django.http import HttpResponse


# Create your views here.

def hello(request):
    print('hello')
    return HttpResponse('hello')


def login(request):
    if request.method == 'GET':
        message = 'get:'
        if 'msg' in request.GET:
            message += '你搜索的内容为: ' + request.GET['msg']
        else:
            message += '你提交了空表单'
        uid = request.GET['uid']
        pwd = request.GET['pwd']
    elif request.method == 'POST':
        message = 'post:'
        if 'msg' in request.POST:
            message += '你搜索的内容为: ' + request.POST['msg']
        else:
            message += '你提交了空表单'
        uid = request.POST.get('uid')
        pwd = request.POST.get('pwd')
    print('login')
    print(uid + '--' + pwd)
    if uid == 'root' and pwd == 'root':
        return HttpResponse(message + 'success')
    else:
        return HttpResponse(message + 'error')


urls

urlpatterns = [
    url(r'^admin/$', admin.site.urls, name='admin'),
    url(r'^hello/$', views.hello, name='hello'),
    url(r'^login/$', views.login, name='login'),
]

setting禁用crsf

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    # 'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

html

<div class="container">
    <form action="http://127.0.0.1:8000/login/" method="get">
        <p>get</p>
        uid:<input type="text" name="uid">
        pwd:<input type="password" name="pwd">
        <button type="submit">提交</button>
    </form>
    <form action="http://127.0.0.1:8000/login/" method="post">
        <p>post</p>
        uid:<input type="text" name="uid">
        pwd:<input type="password" name="pwd">
        <button type="submit">提交</button>
    </form>
</div>

js ajax 获取 json
加上header 避免错误
原因:CORS 头缺少 'Access-Control-Allow-Origin')

response['Access-Control-Allow-Origin'] = "*"

html
获取json格式文件并修改视图上的信息


<div class="container">
    <div id='app' class="text-center">
        <!--不使用表单因为会被跳转,使用restAPI-->
        <p>getStu</p>
        uid:<input type="text" name="uid" v-model="uid" placeholder="请输入uid:">
        <button @click="submit">查询</button>
        <p>{{str}}</p>
    </div>
</div>
<script>
    new Vue({
        el: "#app",
        data: {
            uid: '',
            stu: null,
        },
        methods: {
            submit: function () {
                url = 'http://127.0.0.1:8000/getStu/'
                data = {
                    uid: 'root',
                }
                $.ajax({
                    url: url,
                    data: data,
                    type: 'POST',
                    success: (msg) => {
                        console.log(msg)
                        this.stu = msg
                    },
                    dataType: 'json'
                });
            }
        },
        computed: {
            str: function () {
                if (this.stu == null)
                    return ''
                return this.stu.uid + '-' +
                    this.stu.name + '-' + this.stu.score
            }
        }

    })

</script>

getStu
将对象转为json并返回


from  Ahao.Stu import Stu
import json


def getStu(request):
    uid = request.POST['uid']
    print('uid:' + uid)
    s = Stu('aa', 'sss', 11)
    j = json.dumps(s.__dict__)
    print('json:' + j)

    response = HttpResponse(j, content_type="application/json")

    # 添加这个避免 cors 错误
    response['Access-Control-Allow-Origin'] = "*"
    print(response)
    return response


  开发经验 最新文章
Java 9 中的 GC 调优基础
Java9之HttpClientAPI实战详解
TeamFlowy——结合Teambition与Workflowy
深度思考Spark Runtime机制
jQuery实现放大镜效果
疯狂Spring Cloud连载(六)——负载均衡框
JavaWeb学习总结——JavaMail发送邮件
GZIP压缩解压类
git常用命令
appach 和tomcat 之间的关系(1)
上一篇文章      下一篇文章      查看所有文章
加:2017-10-30 04:05:34  更:2017-10-30 04:08:53 
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-19 4:22:40
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  编程开发知识库