首页 > 其他 > 详细

第一章、Django概述

时间:2019-10-21 22:15:31      阅读:87      评论:0      收藏:0      [点我收藏+]

第一章、Django概述

一、了解软件开发架构

c/s  客户端   服务端

    b/s  浏览器   服务端

    ps:bs本质也是cs

二、HTTP协议

全称:超文本传输协议
1.四大特性
    1.基于TCP/IP之上作用于应用层
    2.基于请求响应
    3.无状态  每次连接一次只处理一个请求,
        不保存用户状态 不利于保持连接 所以才有cookie session token的产生...
    4.无连接:
            长连接  websocket(HTTP协议的大补丁):没有数据传也要保持tcp连接

2.数据格式
    请求格式
        请求首行(请求方式,协议版本。。。)
        请求头(一大堆k:v键值对)
        \r\n
        请求体(真正的数据  发post请求的时候才有 如果是get请求不会有)
    
    响应格式
        响应首行
        响应头
        \r\n
        响应体

三、响应状态码

    用特定的数字表示一些意思
    1XX:服务端已经成功接收到了你的数据 正在处理  你可以继续提交其他数据
    2XX:服务端成功响应(200请求成功)
    3XX:重定向
    4XX:请求错误(404 请求资源不存在   403 拒绝访问)
    5XX:服务器内部错误(500 )

四、请求方式

get请求
        朝别人要数据(get请求没有请求体,get请求也可以携带参数)
    post请求
        朝别人提交数据(用户登录)
        

五、基于wsgiref模块

相当于web服务网关接口
        1 socket代码帮你封装好了 
        2 http数据自动帮你处理好了
            1.请求来的时候 帮你拆分http数据格式
            2.响应走的时候 有帮你封装成了符合http数据格式的数据
根据不同的功能拆封成不同的py文件
    urls.py  路由与视图函数对象关系
    views.py  放的是视图函数(处理业务逻辑的)
    templates  模板文件夹(一堆html文件)

六、.动静态网页

静态网页
        数据是写死的 万年不变
    动态网页
        数据是实时获取的
        eg:
            1.后端获取当前时间展示到前端
            2.后端获取数据库中的数据展示到前端
疑问:如何将后端获取的数据 传递给html页面
后端获取的数据 传递给html页面  >>>:  模板的渲染
jinja2  
pip3 install jinja2
模板语法(极其贴近python后端语法)
    <p>{{ user }}</p>
    <p>{{ user.name }}</p>
    <p>{{ user['pwd'] }}</p>
    <p>{{ user.get('hobby') }}</p>
-----------------------------------------   
    {% for user_dict in user_list %}
        <tr>
            <td>{{ user_dict.id }}</td>
            <td>{{ user_dict.name }}</td>
            <td>{{ user_dict.pwd }}</td>
        </tr>
    {% endfor %}

七、python三大主流web框架

Django:
        大而全 自带的功能特别特别多 类似于航空母舰
        有时候过于笨重
Flask
    小而精 自带的功能特别特别少 类似于游骑兵
    第三方的模块特别特别多,如果将flask第三方模块全部加起来 完全可以超过django
    
    比较依赖于第三方模块

Tornado
    异步非阻塞
    牛逼到可以开发游戏服务器

?
A:socket部分
B:路由与视图函数对应关系
C:模板语法

Django:
    A用的别人的  wsgiref
    B自己写的
    C自己写的
Flask
    A用的别人的  werkzeug(基于wsgiref)
    B自己写的
    C用的别人的  jinja2
Tornado
    三者全是自己写的

八、安装Django

注意事项
    1.计算机的名称不能有中文
    2.一个pycharm窗口就是一个项目
    3.项目名里面尽量不要用中文
django版本问题
    1.X   2.X  现在市面上用的比较多的还是1.X
    推荐你使用1.11.9~1.11.13
django安装
    pip3 install django==1.11.11    
如何验证django是否安装成功
    命令行直接敲django-admin

说明:

一个django项目就类似于是一所大学,而app就类似于大学里面的学院
django其实就是用来开发一个个应用的
一个app就相当于一块独立的功能
    用户功能
    管理功能
django支持任意多个app
如何使用
    命令行使用
        创建django项目
            django-admin startproject mysite
                注意:
                        1.使用命令行创建django项目 不会自动帮你创建templates文件夹
                    只能自己创建
                        2.settings文件中 需要你手动在TEMPLATES写配置
                            os.path.join(BASE_DIR, 'templates')
        启动django项目
            python manage.py runserver 
        创建应用app
            python manage.py startapp app01
                  注意:
                       1.新创建的app需要你去settings配置文件中注册
                       pycharm只会帮你注册第一个你在创建项目的时候写的应用

九、使用django

在启动django项目的时候 你一定要确保一个端口只有一个django项目
项目名
    跟项目名同名的文件夹
        settings.py  暴露给用户的配置文件
        urls.py  路由与视图函数对应关系
    应用名
        migrations文件夹  存放数据库迁移记录的
        admin.py  django后台管理
        apps.py  注册相关
        models.py  模型类 
        tests.py  测试文件
        views.py  存放视图函数
    templates文件夹  存放html文件
    manage.py  django入口文件

?
?

第一章、Django概述

原文:https://www.cnblogs.com/demiao/p/11715902.html

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