django框架基础-ORM进阶-长期维护】的更多相关文章

###############    ORM进阶---contenttype    ################ 设计思路: """ 路飞有两种课,专题课和学位课, 专题课都是简单的内容,基础的课程模块, 学位课都是大课程,全套课程, 怎么设计价格策略的问题? 第一种设计: 价格策略表: id,价格, 期限,专题课id,学位课id 1 11 3个月 1 空 1 11 6个月 1 空 1 11 9个月 1 空 1 11 9个月 2 空 1 11 3个月 空 1 1 11 6…
##################   什么是视图?     ####################### 视图: 1,一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 2,响应可以是一张网页的HTML内容(使用render),一个重定向(使用redirect),一个404错误,一个XML文档,或者一张图片. 3,无论视图本身包含什么逻辑,必须要返回响应,否则程序会报错.为了将代码放在某处,大家约定成俗将视图放置在项目(project)…
##################   路由系统介绍    ####################### 路由系统就是路径和函数的对应关系, 路由系统可以看成支撑你这个网站的目录,就像是一本书一样, 这个url对应关系,就是路由系统, 1,在django2.0中不再是url,而是path,其他的都一样, 2,url里面有四个部分,url(正则表达式,函数,参数,别名) from django.conf.urls import url urlpatterns = [ url(正则表达式, vi…
###############    ORM介绍  ################ """ ORM简介: ORM 全拼Object-Relation Mapping. 中文意为 对象-关系映射. 在MVC/MVT设计模式中的Model模块中都包括ORM 在django里面主要是在models.py文件里面设计模型类, ORM和数据库关系: 类--数据表 对象--数据行 属性--字段,理清了这三点,ORM就没有问题 ORM的优点: 1,不用编写各种数据库的sql语句,让软件开…
###############    一对一跨表查询    ################ import os if __name__ == '__main__': os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ORM.settings") import django django.setup() from app01 import models # 一对一查询记录:author和authordetile是一对一…
###############    单表操作-添加数据    ################ import os if __name__ == '__main__': os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ORM.settings") import django django.setup() from app01 import models # 一.添加表记录 # 对于单表有两种方式 # 添加数据的两种…
###############    函数的命名空间和作用域    ############## """ # 函数进阶 命名空间和作用域 命名空间 全局命名空间——我们自己写的非函数中的代码 是在程序从上到下被执行的过程中依次加载进内存的, 放置了我们设置的所有的变量名和函数名, 局部命名空间,——函数 就是函数内部定义的名字 在函数调用的时候才会产生这个命名空间,随着函数调用的结束,这个命名空间就消失了, 内置命名空间,——Python解释器, 就是Python解释器一启动…
###############    @property定义属性    ############## # 所以对于定义属性你有好几种方式了和种类了,# 静态属性,动态属性, # property # 内置装饰器函数 只在面向对象中使用 # 注意: # 1,不能传递任何的参数, from math import pi class Circle: def __init__(self,r): self.r = r @property def perimeter(self): # 不能传递任何的参数,周…
Django框架 之 ORM查询操作详解 浏览目录 一般操作 ForeignKey操作 ManyToManyField 聚合查询 分组查询 F查询和Q查询 事务 Django终端打印SQL语句 在Python脚本中调用Django环境 其他操作 一.一般操作 必知必会 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <1> all():                 查询所有结果    <2> f…
Django框架06 /orm多表操作 目录 Django框架06 /orm多表操作 1. admin相关操作 2. 创建模型 3. 增加 4. 删除 5. 修改 6. 基于对象的跨表查询 7. 基于双下划线的跨表查询 -- 基于join实现的 8. Python脚本中调用Django 环境(Django外部脚本使用models) 1. admin相关操作 注册超级用户 python manage.py createsuperuser # 输入用户名:liubing # 邮箱不用输 直接回车 #…
Django框架05 /orm单表操作 目录 Django框架05 /orm单表操作 1. orm使用流程 2. orm字段 3. orm参数 4. orm单表简单增/删/改 5. orm单表查询 5.1 查询api 5.2 基于双下划线的模糊查询 / filter双下划线查询 总结: 1. orm使用流程 配置mysql # django 连接mysql,settings配置文件中 DATABASES = { 'default': { 'ENGINE': 'django.db.backends…
Django中的ORM进阶操作 Django中是通过ORM来操作数据库的,通过ORM可以很easy的实现与数据库的交互.但是仍然有几种操作是非常绕也特别容易混淆的.于是,针对这一块,来一个分类总结吧. 对于ORM对数据库的基本操作前面model里已经有了介绍,这里专门针对ORM的一对多.多对多.正向.反向等操作来讲解用法和注意事项. 铭记于心的两条: 在联表操作过滤查找数据时用双下划线 "__" 在取数据时用点 "." 一.一对多 首先来设计两张简单的表格,并在其中…
Django框架 之 ORM中介模型 中介模型 处理类似搭配 pizza 和 topping 这样简单的多对多关系时,使用标准的ManyToManyField  就可以了.但是,有时你可能需要关联数据到两个模型之间的关系上. 例如,有这样一个应用,它记录音乐家所属的音乐小组.我们可以用一个ManyToManyField 表示小组和成员之间的多对多关系.但是,有时你可能想知道更多成员关系的细节,比如成员是何时加入小组的. 对于这些情况,Django 允许你指定一个中介模型来定义多对多关系. 你可以…
Django框架 之 ORM 常用字段和参数 浏览目录 常用字段 字段合集 自定义字段 字段参数 DateField和DateTimeField 关系字段 ForeignKey OneToOneField ManyToManyField 常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范围在 -2147483648 to 2147483647. Ch…
一.ORM介绍 1.ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中. ORM在业务逻辑层和数据库层之间充当了桥梁的作用. 2.ORM的由来 让我们从O/R开始.字母O起源于"对象"(Object),而R则来自于"关系"(Relational). 几乎所有的软件…
###############    MVC架构介绍    ################ # MVC架构 # 一个软件框架有很多的模块,每一个模块有不同的功能 # 模块与模块之间相互配合来完成软件开发, # django遵循的是MVC的框架思想 # MVC的产生理念:分工.就是让专门的人做专门的事, # MVC的核心是:解耦,也就是一个模块和其他模块之间只是配合关联性不大,你升级一个模块只要能完成功能,对其他模块影响不大 # M:model,模型,和数据库进行交互 # V:view,视图,产…
1.ORM简介 1.1 ORM的概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中. ORM在业务逻辑层和数据库层之间充当了桥梁的作用. 1.2 为什么需要ORM? 让我们从O/R开始.字母O起源于"对象"(Object),而R则来自于"关系"(Relational).…
Python web框架 本质 收发socket消息 --> 按照HTTP协议消息格式去解析消息 路径和要执行的函数的对应关系 --> 主要的业务逻辑 字符串替换 --> 模板(特殊符号 --> 数据) 一个完整得请求流程: 0. 启动服务端,等待客户端(用户的浏览器)来连接 1. 在浏览器地址栏输入URL,与服务端建立连接,浏览器发送请求 2. 服务端收到请求消息,解析请求消息,根据路径和函数的对应关系,找到将要执行的函数 3. 执行函数,打开HTML文件,进行字符串替换,得到一…
Django框架之View.py(视图文件) 1. 视图简介 视图层是Django处理请求的核心代码层,我们大多数Python代码都集中在这一层面. 它对外接收用户请求,对内调度模型层和模版层,统合数据库和前端,最后根据业务逻辑,将处理好的数据,与前端结合,返回给用户.视图层是真正的后端,是Python工程师的‘主营业务’. 视图就是每个创建的APP中的的view.py文件夹.我们处理数据的那些业务逻辑,就都存放(编辑)在这里. Django的视图层包含下面一些主要内容: URL路由 视图函数…
1. Django简介 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由Python写成. Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 . 2. MVC框架和MTV框架 2.1 MVC框架 MVC框架,全称角Model View Controller,是软件工程的一种架构模式,这个模式把软件系统分为三个部分:…
ORM的优点:(1)简单,不用自己写SQL语句 (2)开发效率高 ORM的缺点:对于不同的人写的代码,执行效率有差别 ORM的对应关系: 类  ---------->  数据表 对象----------->数据行 属性----------->字段 ORM能做的事: (1)操作数据表 -->创建表/删除表/修改表 (2)操作数据行 -->数据的增删查改 但是ORM不能创建数据库,需要自己动手创建数据库 使用Django中的ORM详细步骤: 1.手动创建数据库 2.在Django…
服务端假设所有用户提交的数据都是不可信任的,所以Django框架内置了form组件来验证用户提交的信息 form组件的2大功能:       1 验证(显示错误信息)       2 保留用户上次输入的信息                  -- 可以生成html标签应用: class A_Form(Form): 字段=fields.字段类型(默认参数: required=True, widget=widgets.插件(attrs={})) 常用字段:Charfield,RegexField,I…
Django框架 Django是个怎样的东西呢? Web应用框架----Django  http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理. Web应用框架处理完以后再发送给http服务器,http服务器再返回给用户. 新建项目 •新建项目的命令: django-admin startproject projectname •注意: 由于编辑器版本之间的一些差别, 我们统一使用跟编辑器版本无关的通用方式创建项目. 先在命令行创建项目,然后再设置pycharm代码同步. • 1…
1.自定义主键字段的创建 AutoFiled(pirmary_key=True) # 一般不会自定义,int类型,自增长 一般不自定义主键. 2.order_by asc desc from django.db.models.function import Lower res = Student.objects.order_by(Lower('name').desc()) 表关系的创建 OneToOne student = models.OneToOneField('Student', on_d…
1,字段和字段的参数 1.1>ORM的概念:对象映射模型(Objects Relational Model)是一种为了解决面向对象和关系型数据库存在的互不匹配的现象和技术,简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中,ORM是连接业务逻辑和关系型数据库的桥梁 1.2>ORM的由来 在程序开发人员中,需要一边写业务逻辑部分的内容,有要一遍边写sql语句的增删改查,这就造成程序开发人员的开发效率不够高,错误漏洞会百出,sql语句特点是极其相似的…
1.URL路由系统前言 URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被处理,也没有返回.通俗地理解,不恰当的形容,URL路由是你的Web服务对外暴露的API. Django奉行DRY主义,提倡使用简洁.优雅的URL,没有.php或.cgi这种后缀,更不会单独使用0.2097.1-1-1928.00这样无意义的东西,让你随心所欲设计你的URL,不…
1.URL路由系统前言 URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被处理,也没有返回.通俗地理解,不恰当的形容,URL路由是你的Web服务对外暴露的API. Django奉行DRY主义,提倡使用简洁.优雅的URL,没有.php或.cgi这种后缀,更不会单独使用0.2097.1-1-1928.00这样无意义的东西,让你随心所欲设计你的URL,不…
##################     常用的模板语言       ####################### # django的模板语言, # # 只需要记两种特殊符号: # # {{ }}和 {% %} # # 变量相关的用{{}},逻辑相关的用{%%}. # # ########################## # # 最为常用的模板语言: # # 1,变量 # {{ name }} # # ########################### # # 2,for循环 #…
阅读目录 常用字段 字段合集 自定义字段 字段参数 关系参数 多对多的关联关系的三种方式 一.常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范围在 -2147483648 to 2147483647.  (最大十位) CharField 字符类型,必须提供max_length参数, max_length表示字符长度. DateField 日期字段,…
###############   django框架-django redis    ############### # 学习django redis我能得到什么? # 1,项目中广泛使用到redis, # 2,面试的时候会问到, ###############   nosql介绍    ############### # nosql数据库简介: # nosql,not only sql,这是一类新出现的数据库,和平时的数据库不一样,mysql这种都是关系型数据库, # 这种数据库不支持sql语…