Django ORM 常用字段和参数

一:常用字段

AutoField

int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。

IntegerField

一个整数类型,范围在 -2147483648 to 2147483647。

CharField

字符类型,必须提供max_length参数, max_length表示字符长度。

DateField

日期字段,日期格式 YYYY-MM-DD,相当于Python中的datetime.date()实例。

DateTimeField

日期时间字段,格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ],相当于Python中的datetime.datetime()实例。

二:自定义char类型字段

首先要知道在常用字段中CharField默认的字段类型为varchar类型

如何指定自定义char类型字段:

1.先自定义一个类

class FixedCharField(models.Field): #FixedCharField为自己取的名称,不是固定的

"""
自定义的char类型的字段类
"""
def __init__(self, max_length, *args, **kwargs):
self.max_length = max_length
super(FixedCharField, self).__init__(max_length=max_length, *args, **kwargs) def db_type(self, connection):
"""
限定生成数据库表的字段类型为char,长度为max_length指定的值
"""
return 'char(%s)' % self.max_length

2.在使用的时候,就继承类名

class Person (models.Model):

name = models.CharField(max_length=32) #默认的CharField字段是varchar类型

new_name = FixedCharField(max_length=64, default="张三") #而怎么设置他的类型为char类型,并且为自定义的长度,注意不是models.FixedCharField

def __str__(self):
return self.name

在数据库中可以看到,字段的类型为自定义的char类型长度

Django ORM 常用字段和参数的更多相关文章

  1. Django框架之第六篇(模型层)--单表查询和必知必会13条、单表查询之双下划线、Django ORM常用字段和参数、关系字段

    单表查询 补充一个知识点:在models.py建表是 create_time = models.DateField() 关键字参数: 1.auto_now:每次操作数据,都会自动刷新当前操作的时间 2 ...

  2. Django ORM常用字段和参数

    常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范围 ...

  3. Django orm常用字段和字段参数

    1.Object Relational Mapping(ORM) 1.1ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象 ...

  4. Django(ORM常用字段)

    day68 参考:http://www.cnblogs.com/liwenzhou/p/8688919.html 1. Django ORM常用字段:             1. AutoField ...

  5. Django框架 之 ORM 常用字段和参数

    Django框架 之 ORM 常用字段和参数 浏览目录 常用字段 字段合集 自定义字段 字段参数 DateField和DateTimeField 关系字段 ForeignKey OneToOneFie ...

  6. ORM常用字段和参数

    目录: ORM常用字段和参数

  7. Django框架(九) Django之ORM常用字段和参数

    ORM字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范 ...

  8. python3开发进阶-Django框架的ORM常用字段和参数

    阅读目录 常用字段 字段合集 自定义字段 字段参数 关系参数 多对多的关联关系的三种方式 一.常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中 ...

  9. Python - Django - ORM 常用字段

    AutoField: int 自增列,必须填入参数 primary_key=True 如果没有写 AutoField,则会自动创建一个列名为 id 的列 from django.db import m ...

随机推荐

  1. 解决用try except 捕获assert函数产生的AssertionError异常时,导致断言失败的用例在测试报告中通过的问题

    在使用Python3做自动化测试过程中可能会遇到,assert函数不加try  except,就可以正常在报告里体现用例不通过,加上变成通过. 这是因为在使用try except 时,捕获了asser ...

  2. kylin配置

    hadoop 2.7.4,hive 2.1.1,hbase 1.4.4 配置好的情况下 下载apache-kylin-2.1.0-bin-hbase1x.tar.gz 解压后,配置环境变量 expor ...

  3. Spring使用Quartz定时调度Job无法Autowired注入Service的解决方案

    1)自定义JobFactory,通过spring的AutowireCapableBeanFactory进行注入,例如: public class MyJobFactory extends  org.s ...

  4. Could not read document: Can not deserialize instance of java.lang.String out of START_ARRAY

    线上问题: { "timestamp": "1544510665", "status": 400, "error": & ...

  5. azkaban用户管理及权限配置

    参考:https://blog.csdn.net/zlx510tsde/article/details/52287931 官网:https://azkaban.readthedocs.io/en/la ...

  6. MTK之DrvGen的使用

    打开mcu\custom\drv\Drv_Tool [L206X_code20190321\custom\drv\Drv_Tool]下的DrvGen.exe,如下图所示: 点击"Open&q ...

  7. Java初学者应该注意的学习问题

    作为初学者,在刚开始学习的时候,一定会走很多弯路.但其实很多弯路是不必走的,会浪费很多时间,导致学习效率大打折扣.今天小编给大家讲述一下,作为一个Java初学者,在开始学习的时候应该注意的问题,应该从 ...

  8. 小程序官网CMS开源项目出炉,Weixin-App-CMS 1.0 版本正式发布

    Weixin-App-CMS 是捷微团队开发的微信小程序CMS开源项目,涵盖了微网站的基本功能,能够快速发布简单易用的小程序网站.采用工具“微信web开发”上传小程序,即可快速体验发布体验小程序网站. ...

  9. Innodb引擎中Count(*)

    select count(*)是MySQL中用于统计记录行数最常用的方法,count方法可以返回表内精确的行数. 在某些索引下是好事,但是如果表中有主键,count(*)的速度就会很慢,特别在千万记录 ...

  10. Python相关文章

    1.一台计算机如何安装2个版本的python,互不影响呢 2.Eclipse和PyDev搭建完美Python开发环境(Windows篇) 3.基于官方教程的matplotlib简介