Django Model one
models :URL---->http://www.cnblogs.com/wupeiqi/p/6216618.html
null 数据库中字段是否可以为空
do_column 数据库中字段的列名
default 数据库中字段的默认值
primary_key 数据库中字段是否为主键
db_index 数据库中字段是否可以建立索引
unique 数据库中字段是否可以建立唯一索引
unique_for_data 数据库中字段【日期】部分是否可以建立唯一索引
unique_for_month 数据库中字段【月】部分是否可以建立唯一索引
unique_for_year 数据库中字段【年】部分是否可以建立唯一索引
verbose_name Admin中显示的字段名称
blank Admin中是否允许用户输入为空
editable Admin中是否可以编辑
help_test Admin中该字段的提示信息
choices Admin中选择框的内容,用不变动的数据放在内存中从而避免跨表操作
如:gf = models.IntegerField(choices=[(0, '何穗'),(1, '大表姐'),],default=1)
error_messages 自定义错误信息{字典类型},定制想要显示的错误信息
字典键:null, blank, invalid, invalid_choice, unique, and unique_for_data
{'null':"不能为空",'invalid':"格式错误"}
#自定义自增列
nid = models.AutoFieid(primary_key=True)
#元信息
class UserInfo(models.Model):
nid = models.AutoFieid(primary_key=True)
username = models.Charfiled(max_length=32)
class Meta:
db_table = "table_name" #数据库中生成的表名称,默认:app名称+下划线+类名
index_together = {("pub_date","deadline"),} #联合索引
unique_together = (("pub_date","deadline"),) #联合唯一索引
vernose_name = "用户名" #Admin 中显示的表名称
#一对多的操作:
to, 要进行关联的表名
to_field=None, 要关联的字段名称,默认是主键ID
on_delete=None 当删除关联表中的数据时
models.CASCADE,删除关联的数据,与之关联的也删除
models.DO_NOTHING,引发错误 integrityError
models.PROTECT,引发错误ProtectedError
models.SET_NULL,删除关联的数据,与之关联的值设置为null(前提FK字段需要被设置允许为null)
models.SET_DEFAULT,删除关联的数据,与之关联的值设置为默认值(前提FK字段需要设置默认值default)
related_name = None, 反向操作时,使用的字段名,用于代替【表名_set】
related_query_name = None,反向操作时,使用的字段名,用于代替【表名】
limt_choice_to = None,在Admin或ModelForm 中显示关联书籍是们提供的条件
db_constraint=True 知否在数据库中创建外键约束
patent_link=False 在Adimn中是否显示关联数据
ORM:
create(),可以接受字典类型数据 **kwargs
delete()
get(),获取单条数据,不存在则报错(不建议)
all(),获取全部数据
filter(),获取指定条件的数据
exclude(),获取除条件之外的数据
update()将指定条件的数据更新,支持字典类型 **kwargs
count()获取匹配中的个数
id__gt=1 获取ID 大于1的值
id__gte=1获取ID 大于等于1的值
(id__lt=10,id__gt=1),获取ID大于1小于10的值
id_in[11,22,33,] 获取ID 等于11,22,33,的值
pub_date__isnull = True
(name__contains="ale") ,模糊匹配
(name__icontains="Ale"),大小写不敏感
(id__range=[1,2]) #范围 between ,end
(name='seven').order_by('id') #asc
(name='seven').order_by('-id') #desc
group by
from django.db.models import Count, Min, Max, Sum
values('id').annotate(c=Count(num))
models.Tb1.objects.all()[10:20] 切片
Entry.objects.get(title__regex=r'^(An?|The) +')
Entry.objects.get(title__iregex=r'^(an?|the) +')
date
Entry.objects.filter(pub_date__date=datetime.date(2005, 1, 1))
Entry.objects.filter(pub_date__date__gt=datetime.date(2005, 1, 1))
year
Entry.objects.filter(pub_date__year=2005)
Entry.objects.filter(pub_date__month__gte=6)
select_related(self,*fields) #性能相关:表之间进行join链表操作,一次性获取关联的数据
prefetch_related(self,*lookups) #性能相关:多表连表操作时速度会慢,使用其执行多次SQL查询在Python代码中实现连表操作
aggregate() 聚合函数,获取字典类型聚合结果
bulk_create() 批量插入
get_field_dispay: 返回choice字段可读的值 (1,'成功') ——return '成功'
get_or_create(self,default) #如果存在,则获取,否则创建 !!!!
update_or_create(self,default) #如果存在,则更新,否则创建 !!!!
first(self)获取第一个
lase(self)获取最后一个
in_bulk(self,id_list=None):
id_list = [11,22,33]
exists(self)
Django Model one的更多相关文章
- 【转】Django Model field reference学习总结
Django Model field reference学习总结(一) 本文档包含所有字段选项(field options)的内部细节和Django已经提供的field types. Field 选项 ...
- Django model字段类型清单
转载:<Django model字段类型清单> Django 通过 models 实现数据库的创建.修改.删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField ...
- Django:Model的Filter
转自:http://www.douban.com/note/301166150/ django model filter 条件过滤,及多表连接查询.反向查询,某字段的distinct 1.多表 ...
- Django model中 双向关联问题,求帮助
Django model中 双向关联问题,求帮助 - 开源中国社区 Django model中 双向关联问题,求帮助
- django 自定用户系统 以及 Django Model 定义语法
http://www.tuicool.com/articles/jMzIr2 django使用自己的用户系统 http://www.jianshu.com/p/c10be59aad7a Django ...
- tornado with MySQL, torndb, django model, SQLAlchemy ==> JSON dumped
现在,我们用torndo做web开发框架,用他内部机制来处理HTTP请求.传说中的非阻塞式服务. 整来整去,可谓之一波三折.可是,无论怎么样,算是被我做成功了. 在tornado服务上,采用三种数据库 ...
- Django Model field reference
===================== Model field reference ===================== .. module:: django.db.models.field ...
- Django model对象接口
Django model查询 # 直接获取表对应字段的值,列表嵌元组形式返回 Entry.objects.values_list('id', 'headline') #<QuerySet [(1 ...
- Django学习之四:Django Model模块
目录 Django Model 模型 MODEL需要在脑子里记住的基础概念 区分清楚,必须不能混淆的 class Meta 内嵌元数据定义类 简单model创建实例 数据源配置 接着通过models在 ...
- Django Model Form
ModelForm ModelForm结合了Form和Model,将models的field类型映射成forms的field类型,复用了Model和Model验证, 写更少的代码,并且还实现了存储数据 ...
随机推荐
- A(光圈)S(快门) P(程序) M(手动)曝光模式
摄影笔记:http://mp.weixin.qq.com/s/SCzXybbCCE8VzfAQKTqlDw 曝光模式,指的就是M档(手动曝光).A档(Av档,光圈优先).S档(Tv档,快门优先),Au ...
- Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002] No such file or directory解决方法
今天用pdo连接mysql遇到一个奇怪的问题,host设为127.0.0.1可以连接成功,设为localhost就会报如下的错误: PHP Fatal error: Uncaught excepti ...
- pc端常见布局---水平居中布局 单元素定宽
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 人脸识别 python调用face++ 功能测试
使用python调用face++的API,调用detect功能,识别人脸 首先进入face++官网注册,获得API Key和API Secret.使用官网提供的免费python api调用功能,提供了 ...
- HDU 5091 Beam Cannon (扫描线思想)
题意:移动一个矩形,使矩形内包含的点尽量多. 思路:把一个点拆成两个事件,一个进(权值为1)一个出(权值为-1),将所有点按照x排序,然后扫描,对于每个x,用一个滑窗计算一下最大值,再移动扫描线.树状 ...
- Android(java)学习笔记128:xml文件生成
1.xml文件: 用元素描述数据,跨平台. 2.利用传统的方式创建xml文件,下面是一个案例: 设计思路:建立一个学生管理系统,创建xml文件保存学生信息: (1)首先是布局文件activity_ma ...
- appium---常用的adb命令
在测试android-app的时候,adb命令可以帮助我们解决许多问题 什么是adb Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-to ...
- JQuery EasyUI学习记录(四)
1.EasyUI中的validatebox使用 提供的校验规则: 1.非空校验required="required" 2.使用validType指定 email: 正则表达式匹配电 ...
- Mybatis学习记录(1)
1.Mybatis介绍 Mybatis是apache的一个开源项目iBatis,Mybatis是一个优秀的持久层框架,他对jdbc的操作数据库的过程进行封装,使开发者只需要关注sql本身,不需 ...
- mac 升级EI Capitan后遇到c++转lua时遇到libclang.dylib找不到的错
升级EI Capitan后,打包lua脚本时,会报这个错: LibclangError: dlopen(libclang.dylib, 6): image not found. To provide ...