zoukankan      html  css  js  c++  java
  • django01

    何为WEB应用?

    所谓的web应用就是我们基于浏览器打开的一个个网页(对应网址得到的内容)

    软件开发架构

    1. C/S架构: 客户端/服务端
    2. B/S架构:浏览器/服务器
    3. 所有的B/S架构本质上就是C/S架构。

    HTTP协议:

    超文本传输协议:规定了客户端和服务端消息传输的格式。

    四大特性:

    1. 基于TCP/IP协议作用于应用层的协议
    2. 基于请求响应(请求响应一一对应,并且服务器不能够自动回消息)
    3. 无状态(无论你访问多少次,我带你如初恋)
    4. 无连接(HTTP协议在请求结束后,就断开连接) (websocket)常连接

    数据格式之请求:

    1. 请求首行
    2. 请求头(一堆k,v键值对)
    3. 这的空格很关键
    4. 请求体(里面存放post请求的数据)
    5. get请求的弊端:1.传输的数据直接可以在地址栏显示 2.并且请求的数据长度有限制

    数据格式之响应:

    1. 响应首行
    2. 响应头(一堆k,v键值对)
    3. 这的空格很关键
    4. 响应体(里面存放post请求的数据)

    响应状态码:

    Statues Code:

    1. 1xx: 表示服务器已经成功接受你的数据正在处理,你可以继续提交
    2. 2xx: 请求成功
    3. 3xx: 重定向
    4. 4xx:请求资源错误,或者不存在
    5. 5xx: 服务器错误

    动静态网页:

    1. 静态网页:页面上的数据都是写死的,万年不变
    2. 动态网页:页面上的数据是从后端动态获取的;然后将数据传到前端页面。

    模板渲染:

    后端生成的数据直接传递给前端页面使用(并且前端数据可以通过模板语言很灵活的操作数据)

    模板渲染 模板的语法通过第三方库模块来实现: pip3 install jina2

    模板语法:{{ 操作的数据}};{%for user in userinfo%}操作的数据{%endfor%}

    Templates:

    用于存放你所有的HTML代码

    web的三大主流框架介绍:

    1. Django:大而全,自带了很多的功能模块,类似于航空母舰(缺点:就是太笨重了)
    2. Flask: 短小精悍,自带了功能模块特别少,大部分都依赖于第三方库和模块来实现。(小而轻)
    3. Tornado:异步非阻塞, 主要用于处理高IO,多路复用的情况,多用于游戏开发。

    在创建Django项目需要注意的点:

    1. 计算机的名称不能有中文的存在,否则会报错
    2. 一个pycharm窗口就是一个项目,不要把多个项目放在同一个pycharm中启动
    3. 项目的名称不能用中文

    Django项目版本的选择:

    1. 推荐下载1.11.11版本的
    2. 命令行下载: pip3 install djiango==1.11.11
    3. 验证是否安装成功: django-admin

    创建Django项目的两种方式:

    • 命令行创建

      1. ​ 创建Django项目: django-admin startproject 项目名
      2. ​ 创建app应用: python3 manage.py startapp app01
      3. ​ 启动django项目: python3 manage.py runserver

      ps:需要注意的是:在使用命令行创建的项目中,没有template文件夹的存在,后期需要自己手动进行配置,需要在settings.py里面进行手动添加。

    • 通过pycharm进行创建

      1. FILE=====>new project: 选择Django项目进行创建
      2. 创建app,可以在创建时自动生成,也可以不进行创建,后期在项目里进行手动创建,添加
      3. 也可以在项目里通过使用终端来创建:python3 manage.py startapp app01
      4. 或者通过在任务栏里的Tools====>run manage task功能:直接输入 startapp app01

    在使用项目是需要注意的问题:

    1. 用Django框架时一定只要保证一个项目在运行,否则端口会被占用
    2. 一定要记得清除浏览器的缓存

    app应用的概念:

    1. Django 对应的就是大学
    2. app就是大学下面的所有学院
    3. 在创建了app时,一定要去settings里面去注册我们的app应用。

    Django各个文件的作用:

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

    入门级别的小白使用Django 的三板斧:

    from django.shortcuts import render,HttpResponse,redirect

    1. HttpResponse 返回字符串
    2. render 返回一个html页面
    3. 两种给前端页面传值的方式
      def reg(request):
      user_dict = {'name':'jason','password':'123'}
      return render(request,'reg.html',{'user_dict':user_dict})
    	def reg(request):
    		user_dict = {'name':'jason','password':'123'}
    		return render(request,'reg.html',locals())
    
    1. redirect 重定向
  • 相关阅读:
    Python学习笔记5
    Python字符串的encode与decode
    python代码`if not x:` 和`if x is not None:`和`if not x is None:`
    关于sys.argv
    Python学习笔记4
    Python学习笔记3
    Python学习笔记2
    生产者消费者_测试
    进程管理
    软件包管理
  • 原文地址:https://www.cnblogs.com/jianghongchao/p/10982106.html
Copyright © 2011-2022 走看看