orm 复习】的更多相关文章

day70 2018-05-14 1. 内容回顾 1. ORM 1. ORM常用字段和属性 1. AutoField(primary_key=True) 2. CharField(max_length=32) 3. IntgerField() 4. DateField() 5. DateTimeField() 1. auto_now_add --> 创建的时候自动填充当前时间 2. auto_now --> 每次修改的时候自动把当前时间更新 2. 关系字段 1. ForeignKey(to=&…
1. 角色.菜单.权限的增删该查 1. ModelForm增删改查 2. 增加和编辑使用同一个视图函数 Form() 1. 生成获取用户输入的标签 2. 对用户输入的内容做校验 3. 保留输入的内容同时展示错误提示信息 ModelForm() 1. 不需要自己写类中字段 2. 编辑的时候可以使用instance参数直接把要修改的实例传到form表单 1. 生成获取用户输入的标签时能够把instance的属性直接当成默认值 2. POST提交的时候可以直接调用save()保存数据 FormSet(…
QuerySet数据类型:                        1.可切片,可迭代      [obj,....]                    2.惰性查询:               articles_list=models.Article.objects.all()                              使用articles_list,比如if articles_list,这时转换sql语句 3.缓存机制               articles…
ORM查询总结: models.Book.objects.filter(**kwargs): querySet [obj1,obj2] models.Book.objects.filter(**kwargs).values(**kwargs) : querySet [{},{},{}] models.Book.objects.filter(**kwargs).values_list(title) : querySet [(),(),()] 跨表查询总结: class Book(models.Mo…
# ###############基于对象查询(子查询)############## 一.对多查询  正向查询 from django.shortcuts import render,HttpResponse from app01 import models # Create your views here. def query(request): # ###############基于对象查询(子查询)############## # 一对多查询 book-->publish #正向查询: #…
django 在xadmin中自定义内容的变量及优化汇总 一: 首先下载xadmin pip install git+git://github.com/sshwsfc/xadmin.git@django2 然后在项目的settings.py中添加如下配置 INSTALLED_APPS = [ ..... 'xadmin', 'crispy_forms', 'reversion' ] 假如你是用的MySql数据库,进行如下配置 DATABASES = { 'default': { 'ENGINE'…
MVC的一些 今天把MVC复习了下,包括官方文档以及各种中文博客. 官方文档里面最能说明的问题的图片,相对于传统的MVC,苹果分离了View和Model之间的通信,实现了更好的复用性.我觉得MVC更是一种高层的设计架构,而非很多博客上所谓的设计模式.在复习这个的时候,再一次发现了设计模式的用武之地..还有一张斯坦福大学的很有用的图,也一目了然地分析了MVC彼此的交流..MVC很强大,但是弊端也有.如果使用不当,很可能让大量代码都集中在 Controller 之中,让 MVC 模式变成了 Ma…
一般操作 看专业的官网文档,做专业的程序员! 必知必会13条 <> all(): 查询所有结果 <> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <> get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误. <> exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象 <> values(*field): 返回一个Val…
一般操作 看专业的官网文档,做专业的程序员! 必知必会13条 > all(): 查询所有结果 > filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 > get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误. > exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象 > values(*field): 返回一个ValueQuerySet——一个特殊的Que…
一些说明: 表myapp_person的名称是自动生成的,如果你要自定义表名,需要在model的Meta类中指定 db_table 参数,强烈建议使用小写表名,特别是使用MySQL作为后端数据库时. id字段是自动添加的,如果你想要指定自定义主键,只需在其中一个字段中指定 primary_key=True 即可.如果Django发现你已经明确地设置了Field.primary_key,它将不会添加自动ID列. 本示例中的CREATE TABLE SQL使用PostgreSQL语法进行格式化,但值…