zoukankan      html  css  js  c++  java
  • Django基本模块介绍

    首先了解什么是MVC
    MVC框架的核心思想是:解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容
    django就是遵循MVC设计的,它有一个专有名词:MVT
    M的全拼为Model,负责处理数据,内嵌了ORM框架
    V的全拼为View,负责接收HttpRequest,业务处理,返回HttpResponse
    T的全拼为Template,负责封装构造要返回的html,内嵌了模板引擎


    Model模块:
    ORM:django和数据库进行数据交互重要框架,它让我们不用再需要面向数据库编写代码
    一,定义模型类:
    1.1模型类必须继承自Model类,创建模型类就是在数据库中创建数据表,django会自动为表创建一个主键列,
    如果自己设置某些属性为主键后django不会再创建主键,默认主键属性为id,可以用pk代替
    1.2属性命名限制,不能使python的关键字,不能使用连续的下划线,这是django的查询方式
    定义属性需要制定字段类型,
    格式属性=models.字段类型(选项)
    常用字段类型:字符串CharField(max_length=字符长度), 整数 IntegerField ,自动增长 AutoField ,
    日期DateField(auto_now=False,auto_now_add=False),前者是每次保存对象时打印当前时间
    后者是显示第一次创建的时间,显示时间戳,二者只能选其一
    1.3关系字段类型:一对多: ForeignKey, 多对多:ManyToManyField ,一对一:OneToOneField
    1.4 可以设置元选项更改数据库的表名,在模型类中定义Meta类,直接写db_table= '指定表名'

    2模型的实例方法
    2.1 save()将对象保存到数据库表中
    2.2 delete()将对象从数据库表中删除

    3 查询集
    3.1 表示从数据库获取的对象集合,它有两大特性:惰性执行,创建的时候不会执行,调用数据才会执行
    缓存,查询集的结果被保存下来,再次查询使用缓存数据
    3.2返回的集合可以使用过滤器:
    (1)all()返回所有数据
    (2)filter(条件) 返回满足条件的数据
    (3)exclude():返回满足条件之外的数据
    (4)order_by(): 排序
    (5)get():返回满足条件的对象
    (6)count():返回当前查询的总条数
    (7)exists():判断查询集中是否有数据,如果有返回True,否则返回False

    4 字段查询:实现sql中where功能
    4.1运算符号
    (1)exact:表示判等
    (2)contains: 表示包含
    (3)startswith, endswith:以指定值开头或结尾
    (4)isnull:是否为Null
    (5)year...日期类型的属性

    list=BookInfo.books.filter(id__exact=1)
    可简写为:list=BookInfo.books.filter(id=1)

    View模块
    1 因为它是负责接收HttpRequest对象,所以要对客户端发送过来的url进行正则匹配,
    让相应的函数进行信息处理
    2 视图就是在View中定义的函数 试图函数的参数必须包含HttpRequest实例,必须返回一个HttpResponse对象

    3 常见响应错误
    3.1 404错误 错误的地址
    3.2 500错误 服务器出错
    3.3 400错误 语法错误
    4 HttpRequest对象 django在接收到http协议后会自己创建一个request对象
    4.1request调用一下方法查看属性
    (1)path :一个字符串,请求页面的完整路径
    (2)method:字符串,请求使用的方法,通常为get或者post
    (3)GET:get请求方式的所有参数
    (4)POST:post请求方式的所有参数
    (5)COOKIES: 所有的cook信息
    (6)session: url携带的session信息

  • 相关阅读:
    oracle 数据库服务名怎么查
    vmware vsphere 6.5
    vSphere虚拟化之ESXi的安装及部署
    ArcMap中无法添加ArcGIS Online底图的诊断方法
    ArcGIS中字段计算器(高级计算VBScript、Python)
    Bad habits : Putting NOLOCK everywhere
    Understanding the Impact of NOLOCK and WITH NOLOCK Table Hints in SQL Server
    with(nolock) or (nolock)
    What is “with (nolock)” in SQL Server?
    Changing SQL Server Collation After Installation
  • 原文地址:https://www.cnblogs.com/Autism/p/11754951.html
Copyright © 2011-2022 走看看