首页 > Web开发 > 详细

web框架--django基础简介

时间:2019-07-09 23:51:40      阅读:156      评论:0      收藏:0      [点我收藏+]

python三大主流web框架
  Django:大而全,自带了很多功能模块,类似于航空母舰 (缺点:有点笨重)
  Flask:短小精悍,自带的功能模块特别少,大部分都是依赖于第三方模块(小而轻)
  Tornado:异步非阻塞 主要用在处理高io 多路复用的情况 可以写游戏后端

 

所有web应用本质都是socket服务器,浏览器就是客户端。

 

import socket


"""
请求首行
b‘GET / HTTP/1.1\r\n
请求头(一大堆kv键值对)
Host: 127.0.0.1:8080\r\n
Connection: keep-alive\r\n
Upgrade-Insecure-Requests: 1\r\n
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36\r\n
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3\r\n
Accept-Encoding: gzip, deflate, br\r\n
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8\r\n
\r\n
请求体
‘


"""
server = socket.socket()  # 不传参数默认就是TCP协议
server.bind((127.0.0.1,8080))
server.listen(5)


while True:
    conn, addr = server.accept()  # 阻塞 等待客户端链接
    data = conn.recv(1024)
    conn.send(bHTTP/1.1 200 OK\r\n\r\n)
    print(data)
    # 手动处理http数据获取用户访问的路径
    current_path = data.decode(utf-8).split(\r\n)[0].split( )[1]
    if current_path == /index:
        # 路由匹配上之后返回index
        # conn.send(b‘<h1>index</h1>‘)
        with open(index.html,rb) as f:
            conn.send(f.read())
    else:
        # 当匹配不上的时候统一返回404
        conn.send(b404)

    conn.close()

 

django文件列表

应用名
  migrations 数据库迁移记录相关数据
  admin.py django后台管理相关
  models.py 模型表相关
  views.py 视图函数相关
项目名
  settings.py 配置文件
  urls.py 路由与视图函数的映射关系
  templates项目用到的所有的html文件
  
manage.py   django入口文件

配置文件

1、数据库

DATABASES = {
    default: {
    ENGINE: django.db.backends.mysql,
    NAME:dbname,
    USER: root,
    PASSWORD: xxx,
    HOST: ‘‘,
    PORT: ‘‘,
    }
}

2、模版

TEMPLATE_DIRS = (
        os.path.join(BASE_DIR,templates),
    )

3、静态文件

STATICFILES_DIRS = (
        os.path.join(BASE_DIR,static),
    )

 

web框架--django基础简介

原文:https://www.cnblogs.com/duGD/p/11161117.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!