django前两天内容回顾

django前两天内容回顾

1.web框架的本质

1.连接前端与数据库的中间介质 即socket服务端


2.在手写web框架引出django的过程中使用了两个内置模块通过'wsgiref'模块封装了socket代码处理了http相关数据 再通过'jinja2'模块的模板语法:支持将python后端数据传递给html页面并通过特殊语法完成操作 然后根据软件开发目录规范把文件拆分
    
    
3.python主流web框架
    django      大而全
    fask        小而精
    tornado     异步非阻塞

2.django简介以及基本使用

1.版本问题
    django1.X:同步		1.11
    django2.X:同步		2.2
    django3.X:支持异步     3.2
    django4.X:支持异步	   4.2
        
        
2.运行django注意事项
	1.django项目中所有的文件名目录名不要出现中文
	2.计算机名称尽量也不要出现中文
 	3.一个pycharm尽量就是一个完整的项目(不要嵌套 不要叠加)
	4.不同版本的python解释器与不同版本的django可能会出现小问题
    
    
3.基本使用
    1.下载
        pip3 install django 			
        pip3 install django==版本号		  
        pip3 install django==2.2.22
    2.验证
    	django-admin
    3.常见命令
        django-admin startproject 项目名  # 创建项目

        cd 项目名
        python38 manage.py runserver ip:port  # 启动项目
        
    4.pycharm自动创建django项目注意
    会自动创建templates文件夹 但是配置文件中可能会报错
    os.path.join(BASE_DIR,'templates')
    
   5.命令行创建应用
	python38 manage.py startapp appname
   6.pycharm创建应用
	新建django项目可以默认创建一个 并且自动注册
    """
    创建的app一定要去settings.py中注册
        INSTALLED_APPS = [
            'app01.apps.App01Config',
            'app02'
        ]
    """
    
    
4.目录结构
    网址后缀			路由
    函数				 视图函数

    urls.py				路由层
    views.py			视图层
    templates			模板层
    models.py			模型层
    
    
5.django小白必会三板斧
    from django.shortcuts import render,HttpResponse,redirect

    HttpResponse		 返回字符串类型的数据
    render				返回html页面并且支持传值
    redirect			重定向

3.静态文件及其配置

1.静态文件的概念
	简单的理解为html页面需要使用到的不经常变化的资源
    	css文件、js文件、img文件、第三方文件

2.静态文件配置
	STATIC_URLS = '/static/'
	STATICFILES_DIRS = [
        os.path.join(BASE_DIR,'static')
    ]
    
3.接口前缀动态匹配
	{% load static %}
	{% static 'bbb/ccc/d.txt' %}

4.form表单相关注意事项

form标签重要属性
	action	控制提交的地址
		三种编写
	method	控制提交的方法
    	两种方法 默认是get
 
网络请求方式
	get
 		朝服务端请求数据
			并且可以携带一些额外的不敏感的条件(大小有限制)
            URL?xxx=yyy&ooo=ppp
	post
    	朝服务端提交数据
       		也可以携带数据并且数据是放在请求体里面的(大小没有限制)
            请求体

5.request对象方法

request.method
	获取当前请求的请求方法 结果是纯大写的字符串 GET、POST
    
request.GET
	获取URL问号后面携带的数据 结果是一个QueryDict拥有字典的特性
    	request.GET.get()		值列表最后一个数据值
   		request.GET.getlist()	整个值列表
        
request.POST
	获取post请求请求体里面的数据 结果也是一个QueryDict拥有字典的特性
    	request.POST.get()		值列表最后一个数据值
   		request.POST.getlist()	整个值列表

6.django连接数据库

1.django默认自带sqlite3小型数据库
2.我们可以指定其他数据库 比如MySQL
3.配置文件中需要修改配置 DATABASES
	1.添加相关配置mysql、NAME、HOST、PORT、USER、PASSWORD、CHARSET
	2.需要下载mysqlclient模块(如果是django1.X版本可以用pymysql)

7.ORM简介以及基本操作

1.什么是ORM?
    对象关系映射
    优势>>>:简单方便快捷
    劣势>>>:效率可能会低
    
2.基操作    
    models.UserInfo.objects.create()  # insert into
    models.UserInfo.objects.filter()  # where
    models.UserInfo.objects.filter().update()  # update
    models.UserInfo.objects.filter().delete()  # delete from 
    
3.数据库迁移命令
    1.models.py中编写了与数据库相关的代码
    2.python38 manage.py makemigrations  # 将代码操作记录下来 migrations目录
    3.python38 manage.py migrate  # 将操作真正同步到数据库中
posted @ 2022-12-12 17:18  阿丽米热  阅读(26)  评论(0编辑  收藏  举报
Title