精华内容
下载资源
问答
  • 一:Django模型数据类型 Django中遵循 Code Frist 的原则,即:根据代码中定义的类来自动生成数据库表 以下是我在模型中写的数据: class Cart(models.Model): sort = models.CharField(max_length=20, null=...

    一:Django模型数据类型

    Django中遵循 Code Frist 的原则,即:根据代码中定义的类来自动生成数据库表

    以下是我在模型中写的数据:

    class Cart(models.Model):
        sort = models.CharField(max_length=20, null=False)
        name = models.CharField(max_length=20, null=False)
        price = models.FloatField(max_length=20)
        unit = models.CharField(max_length=20)
        count = models.IntegerField(null=False)
        money = models.FloatField(default=0, null=False)
        tot_money = models.FloatField(default=0, null=False)
        def __str__(self):
            return self.name
      def publish(self):
            self.save()

     这里用到许多数据类型,以下为常见类型总结:

    models.CharField  字符串字段(必须参数 max_length)
    models.BooleanField  布尔类型,不能为空,Blank=True
    models.DateField  日期类型date,对于参数:auto_now = True每次更新都会更新这个时间;auto_now_add 则只是第一次创建添加,之后的更新不再改变
    models.DateTimeField  日期类型 datetime同DateField的参数
    models.Decimal  十进制小数类型decimal,必须指定整数位max_digits和小数位decimal_places
    models.EmailField  字符串类型(正则表达式邮箱),对字符串进行正则表达式
    models.FloatField  浮点类型
    models.IntegerField  整形
    models.BigIntegerField  长整形
    models.TextField  字符串=longtext
    models.TimeField  时间 HH:MM[:ss[.uuuuuu]]
    models.URLField  字符串,地址正则表达式
    models.BinaryField  二进制
    models.ImageField   图片
    models.FilePathField 文件

     

    括号里需要参数,所以以下是对参数的一些总结:

    null=True (数据库中字段是否可以为空)
    blank=True   (django的 Admin 中添加数据时是否可允许空值)
    primary_key = False(主键,对AutoField设置主键后,就会代替原来的自增id列)
    auto_now 和 auto_now_add(auto_now   自动创建--无论添加或修改,都是当前操作的时间;auto_now_add  自动创建--永远是创建时的时间)
    max_length (最大长度)
    default  (默认值)
    verbose_name  (Admin中字段的显示名称)
    name|db_column  (数据库中的字段名称)
    unique=True  (不允许重复)
    db_index = True  (数据库索引)
    editable=True  (在Admin里是否可编辑)
    error_messages=None  (错误提示)
    auto_created=False  (自动创建)
    help_text  (在Admin中提示帮助信息)
    upload-to   (上传到哪个位置,更多与image,filepath配合使用)

     

    二:标签详解(1)标签的形式:{% tag %}

    (2)标签的作用:

    ①在输出时创建一些文本
    ②通过执行循环和一些逻辑来实现控制流
    ③装载一些外部信息进入模板

    (3)一些常用的内建标签:

    ①block 定义一个块,该块能够被继承他的子孙模板重写

    {% block %}
    //(定义块内容)
    {% endblock %}

    ②comment 模板系统会忽略该标签内部的所有内容

    {% comment %}
       //(内容)
    {% endcomment %}

     ③cycle  在循环时轮流使用给定的字符串列表中的值

    <tr class="{% cycle list%}">
       ...
    </tr>
    

     ④for  循环list中的每个值,进行相应的输出

    {% for variable in list/dict %}
       //(使用variable)
    {% endfor%}

     ⑤if  variable中可以使用and,or,not,但不允许and和or一起使用

    {% if variable %}
      //(内容1)
         {% elif %}
      //(内容2)
    {% endif %}

     ⑥ifequal  判断两个变量是否相等

    {% ifequal variable1 variable2 %}
         ...
    {% endifequal %}

     

    展开全文
  • Django 模型与 Mysql 数据类型对应

    千次阅读 2018-02-03 12:01:05
    Django 模型数据类型与 Mysql 对应

    Django 1.11.9
    文件路径:site-packages\django\db\backends\mysql\base.py–class DatabaseWrapper

    _data_types = {
    ‘AutoField’: ‘integer AUTO_INCREMENT’,
    ‘BigAutoField’: ‘bigint AUTO_INCREMENT’,
    ‘BinaryField’: ‘longblob’,
    ‘BooleanField’: ‘bool’,
    ‘CharField’: ‘varchar(%(max_length)s)’,
    ‘CommaSeparatedIntegerField’: ‘varchar(%(max_length)s)’,
    ‘DateField’: ‘date’,
    ‘DateTimeField’: ‘datetime’,
    ‘DecimalField’: ‘numeric(%(max_digits)s, %(decimal_places)s)’,
    ‘DurationField’: ‘bigint’,
    ‘FileField’: ‘varchar(%(max_length)s)’,
    ‘FilePathField’: ‘varchar(%(max_length)s)’,
    ‘FloatField’: ‘double precision’,
    ‘IntegerField’: ‘integer’,
    ‘BigIntegerField’: ‘bigint’,
    ‘IPAddressField’: ‘char(15)’,
    ‘GenericIPAddressField’: ‘char(39)’,
    ‘NullBooleanField’: ‘bool’,
    ‘OneToOneField’: ‘integer’,
    ‘PositiveIntegerField’: ‘integer UNSIGNED’,
    ‘PositiveSmallIntegerField’: ‘smallint UNSIGNED’,
    ‘SlugField’: ‘varchar(%(max_length)s)’,
    ‘SmallIntegerField’: ‘smallint’,
    ‘TextField’: ‘longtext’,
    ‘TimeField’: ‘time’,
    ‘UUIDField’: ‘char(32)’,

    展开全文
  • Django模型类型 下拉列表所需数据 # 天气类型 class WeatherDesc(models.Model): name = models.CharField('天气说明', max_length=20) value = models.IntegerField('天气类型值', unique=True) class Meta: ...

    Django模型类型

    • 下拉列表所需数据
    # 天气类型
    class WeatherDesc(models.Model):
        name = models.CharField('天气说明', max_length=20)
        value = models.IntegerField('天气类型值', unique=True)
    
        class Meta:
            verbose_name = '天气类型'
            verbose_name_plural = verbose_name
            # db_table = 'tab_name' #表名
    
        def __str__(self):
            return self.name
    
    • 外键关联数据
    # 城镇天气
    class GLTownWeahter(models.Model):
        #自增主键
        id = models.AutoField('编号', primary_key=True)
        #数值int类型
        town_code = models.IntegerField('乡镇编号')
        #字符串类型
        town_name = models.CharField('乡镇名称', max_length=50)
        first_tem_min = models.IntegerField('第一天最低温')
        first_tem_max = models.IntegerField('第一天最高温')
        # 进行外键关联 如果当前实体多处关联同一对象,需要添加related_name,可以理解为别名;db_column指定外键字段名;to_field指定了主表的关联字段;on_delete设置级联操作。
        first_weather_desc = models.ForeignKey('WeatherDesc', related_name="town_first",              db_column="first_weather_desc",to_field="value", blank=True, null=True, verbose_name='第一天天气现象',
        on_delete=models.CASCADE)
        # default设置时间默认值
        pub_time = models.DateTimeField('发布时间', default=datetime.now)
        #boolean类型,数据表对应bit类型
        state = models.BooleanField('有效状态')
        #db_table设置对应数据库表,verbose_name_plural设置admin后台显示的名称。
        class Meta:
            db_table = 'GL_TownWeahter'
            verbose_name = '古浪乡镇天气预报'
            verbose_name_plural = verbose_name
        # 如果返回类型不是字符串需要str()转型
        def __str__(self):
            return str(self.id)
    
    展开全文
  • Django模型属性和MySQL数据库数据类型对应关系 分类 模型属性类型 mysql数据库类型 自增 AutoField int 布尔 BooleanField tinyint 布尔 NullBooleanField tinyint 字符 CharField varchar 字符 ...

    Django模型属性和MySQL数据库数据类型对应关系

    分类 模型属性类型 mysql数据库类型
    自增 AutoField int
    布尔 BooleanField tinyint
    布尔 NullBooleanField tinyint
    字符 CharField varchar
    字符 TextField longtext
    数字 IntegerField int
    数字 DecimalField decimal
    数字 FloatField double
    日期和时间 DateField date
    日期和时间 TimeField time
    日期和时间 DateTimeField datetime
    文件 FileField varchar
    文件 ImageField varchar
    展开全文
  • 接上篇内容,本篇我们继续介绍Django模型数据操作。 聚合函数 使用aggregate()过滤器调用聚合函数。聚合函数包括:Avg,Count,Max,Min,Sum,被定义在django.db.models中。aggragate返回的是一个字典类型,格式如...
  • Django model 数据类型清单Django 通过 models 实现数据库的创建、修改、删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用:AutoField:一个自动递增的整型字段,添加记录时它会自动增长。你通常不...
  • 主要介绍了django数据模型(Model)的字段类型,文中给大家提到了django数据模型on_delete, db_constraint的使用,需要的朋友可以参考下
  • 字段类型(Field types) 1、AutoField 它是一个根据 ID 自增长的 IntegerField 字段。通常,你不必直接使用该字段。如果你没在别的字段上指定主 键,Django 就会自动添加主键字段。 2、BigIntegerField 64位整数,...
  • django model 数据类型

    2016-07-05 23:16:00
    Django 通过 models 实现数据库的创建、修改、删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField:一个自动递增的整型字段,添加记录时它会自动增长。你通常不需要直接使用这个字段;如果...
  • AutoField:主键 根据实际id自动增长 通常不指定 主键会自动添加到模型中 CharField(max_length = 20):字符串 字节长度为20 TextField:大文本 一般大于4000字才使用 IntegerField: 整数 DecimalField: 小数 ...
  • Djiango模型常用字段类型 类型 说明 AutoField 一个Integer类型的自动增长 BooleanField 用于存放布尔类型数据(True或者False) CharField 用于存放字符类型数据,需要指定长度max_length DateField .....
  • Django模型字段常用的类型

    千次阅读 2017-12-21 22:24:43
    Django模型字段常用的类型类型 说明 AutoField 一个Integer类型的自动增长 BooleanField 用于存放布尔类型数据(True或者False) CharField 用于存放字符类型数据,需要指定长度max_length DateField 日期...
  • 一个模型最重要也是唯一必需的部分,是它定义的数据库字段 字段名称限制 1、字段名不能是python保留字,这样会导致python语法错误 2、字段不能包含连续一个以上的下划线,这样会和Django查询语句语法冲突 数据库...
  • django DRF 创建模型类的时候数据类型有没有变长字符串啊,目前只知道 CharField(max_length=200)是mysql里的char类型,有的时候数据长度波动大,比如大多就20个长度左右,但是有一部分有500多的长度,或者不知道...
  • django 模型

    2017-08-27 10:36:00
    django 模型 ORM简介 MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库 ORM是“对象-关系-映射”...
  • Django数据类型—数据库字段类型 字段 一个模型最重要也是唯一必需的部分,是它定义的数据库字段 字段名称限制 1、字段名不能是python保留字,这样会导致python语法错误 2、字段不能包含连续一个以上的下划线,这样...
  • models之字段类型和参数 示例: # class Test(models.Model): # courses_test # """测试学习用""" # # Auto = models.AutoField() # 自增长字段 # # BigAuto = models.BigAutoField() # # # 二进制数据 #...
  • Django 模型中自定义字段类型Field

    千次阅读 2018-02-26 09:58:50
    1. 减少文本的长度,保存数据的时候压缩,读取的时候解压缩,如果发现压缩后更长,就用原文本直接存储:Django 1.7 以下1234567891011121314151617181920212223242526272829303132from django.db import models ...
  • Django 数据模型字段及属性

    千次阅读 2017-05-02 21:57:56
    本文介绍了Django模型常用的字段类型及参数
  • Django 模型

    2013-11-28 00:40:19
    M代表模型,即数据存取层.该层处理与数据相关的所有事务:如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等T代表模板,即表现层.该层处理与表现相关的决定:如何在页面或其他类型文档中进行显示V代表视图,即...
  • objects = AddressManager() # 自定义模型管理类,这里继承原来的模型管理类再封装获取默认地址方法:get_default_addr class AddressManager(models.Manager): def get_default_addr(self, user): try: default_...
  • Django模型

    2017-08-01 11:58:51
    ORMMVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库 ORM是“对象-关系-映射”的简称,主要任务是: 根据...
  • AutoField 自动增长的IntegerField类型 不用指定 django会自动创建名为id的自动增长属性

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 450
精华内容 180
关键字:

django模型数据类型