Django速查学习复习

1. 开端

安装django :pip install django==2.1.0

创建项目:django-admin startprojects A1

启动项目:python manage.py runserver

创建app:python startapp a1

数据库迁移:python manage.py makemigrations

将变更记录同步到数据库:python manage.py migrate

2.settings.py 文件配置信息:

INSTALLED_APPS :注册app。

MIDDLEWARE:中间件,可以自定义中间件并在此注册,就可以执行方法(比如django的注册校验,权限校验)

TEMPLATES:模板文件夹

DATABASES:数据库配置(连接那种数据库)

3.ORM的描述:

orm(object reaction model)对象关系映射,用面向对象的方法来操纵数据库的技术

优点:使用ORM更多的只用关注逻辑代码的编写,不用过多的考虑SQL语句

提高开发效率

缺点:

会牺牲程序的执行效率

 

对应关系:

类 》》 数据表

对象》》数据行

属性》》字段

4.定义视图函数的注意事项:
函数第一个参数必须是request

必须return一个对象

5.FBV与CBV

FBV:function based view 基于函数的视图

CBV:class based view 基于类的视图

6.CBV使用的装饰器:

from django.utils.decorators import method_decorator

方法:
1.给方法上加装饰器:
    @method_decorator(warper)
    def get(self,request):
        return None
2.给dispatch加上装饰器:
    @method_decorator(warper)
    def dispatch(self,request):
3.给类加装饰器:
    @method_decorator(wraper,name='get')
    class Index(View):

request对象方法和属性:
属性:
    request.method 请求的方式8种:get,post,put,delete,options
    request.GET:字典 url上携带参数
    request.POST :字典 form表单通过post请求提交的数据
    request.path : 当前请求的路径
    request.body:请求体
    request.FILES:上传的文件
方法:
    request.get_host() 主机地址
    request.get_full_path() URL路径 带参数

视图中反向解析:
from django.urls import reverse
    reverse('index') >> /idnex/
    无名分组:
    reverse('home',args=('1996','06')) >> '/home/1996/06/'
    有名分组:
    reverse('home',kwargs={'yesr':1996,'month':'06'})) >>> '/home/1996/06/'

模板中反向解析:
{% url 'index'%} >> /index/


7.模板语法:
变量:{{变量名}}
过滤器:{{ 变量名 | filter:参数}}
遍历:{% for i in name_list%}
{{i}}
{% endfor%}

 

原文地址:https://www.cnblogs.com/cou1d/p/12242745.html