Django基础——Model篇(二)】的更多相关文章

一 Model连表关系 一对多:models.ForeignKey(其他表)    多对多:models.ManyToManyField(其他表)    一对一:models.OneToOneField(其他表)    一般在数据库中创建外键关联时,就有一对多或者多对多,而一对一是Django独有的. 应用场景:    一对多:当一张表中创建一行数据时,有一个单选的下拉框(下拉框中内容,可被重复选择)    例如:创建用户信息时,需要选择一个用户类型:普通用户.金牌用户.铂金用户等.      …
一 Django ORM中的概念 ORM —— 关系对象映射,是Object Relational Mapping的简写,是用来简化数据库操作的框架 Django ORM遵循Code Frist原则,即根据代码中定义的类来自动生成数据库表,对于ORM框架:  (1)自定义的类表示待创建数据库的表  (2)根据自定义类创建的对象obj表示数据库表中的一行数据  (3)obj.字段1.obj.字段2.....obj.字段n表示每一行数据中相应字段的值 ORM中的一对多.一对一以及多对多的概念及应用场…
到目前为止,当程序涉及到数据库相关操作时,我们一般都会这么操作:    (1)创建数据库,设计表结构和字段    (2)使用MySQLdb来连接数据库,并编写数据访问层代码    (3)业务逻辑层去调用数据访问层,执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user=', host='localhost') cursor = db.cursor() cursor.execute(sql) data = cursor.…
休息了两天,状态恢复了一下,补充点基础知识. 二叉搜索树 搜索树数据结构支持许多动态集合操作,包括Search,minimum,maximum,predecessor(前驱),successor(后继),INSERT和DELETE等.因此我们使用一颗搜索树既可以作为一个字典又可以作为一个优先队列.且二叉搜索树上的基本操作所花费的时间与这棵树的高度成正比.二叉搜索树有两个很重要的变体,红黑树与B树,这个我们之后有机会再补一篇文章. 顾名思义,一棵二叉搜索树是以一棵二叉树来组织的.如图所示,这样的一…
一.数据库配置 django 默认支持sqlite.mysql.oracle.postgresql数据库,像db2和sqlserver之类的数据库需要第三方的支持,具体详见https://docs.djangoproject.com/en/1.10/ref/databases/ 一.环境准备 1.创建项目 1.使用命令创建项目和应用 创建项目:django-admin startprojcet xxx 创建应用:python manage.py startapp app01 启动应用:pytho…
注意:使用原生sql的方式主要目的是解决一些很复杂的sql不能用ORM的方式写出的问题. 一.extra:结果集修改器-一种提供额外查询参数的机制 二.执行原始sql并返回模型实例 三.直接执行自定义SQL:这种方式完全不依赖model,前面两种还是要依赖model 1.使用extra:查询人民邮电出版社出版并且价格大于50元的书籍 >>> Book.objects.filter(publisher__name='人民邮电出版社').extra(where=['price>50']…
一.增加 create和save方法 实例: 1.增加一条作者记录 >>> from hello.models import * >>> Author.objects.create(name='胡大海') >>> AuthorDetail.objects.create(sex=False,email='333@qq.com',address='北京XX',birthday='1988-1-2',author_id=1) 2.增加一条出版社记录 >…
一.创建数据模型. 实例: 作者模型:一个作者有姓名. 作者详情模型:把作者的详情放到详情表,包含性别.email 地址和出生日期,作者详情模型与作者模型之间是一对一的关系(OneToOneField) 出版商模型:出版商有名称,地址,所在城市,省,国家,网址. 书籍模型:书籍有书名,出版日期,价格.一本书可能会有多个作者,一个作者也可以写多本书,所以作者与书籍的关系是多对多的关联关系(many-to-many),一本书只应该由一个出版商出版,所以出版商和书籍是一对多的关联关系(one-to-m…
Django框架基础-02 Django缓存cookie 1.说明        当我们服务器在响应数据的同时,希望写⼊⼀些缓存数据到客户端        我们可以选择在响应的同时,将要写⼊到客户端的缓存数据写⼊到⽤户的浏览器的cookie中    2.创建response对象        # 创建响应对象        response = HttpResponse('OK')        # response = JsonResponse({"name":"pytho…
目录 1.Django MTV框架简介 2.基础命令创建项目的配置说明 3.前后端交互案例 4.基于数据库实现数据交互增删改查 Django简介 Django框架的设计模式借鉴了MVC的思想,和MVC不同的点是它拆分的三部分,分别为:(Model)模型. (Template)模板.以及(View)视图 MVC和MTV知识点补充: MVC是三个单词的首字母缩写,它们是Model模型.View视图 和Controller控制. 1)最上面的一层,是直接面向最终用户的"视图层"(View).…