ORM常用字段

ORM常用字段

对象关系映射(object relation mapping),跟数据库里库、表、字段,省去了写SQL语句的麻烦,把这些SQL语句封装成了ORM方法

优点:方便、不需要去关心SQL语句怎么写

缺点:比SQL语句执行慢

CharField()字符串

对应MySQL的varchar

varchar根据字符长分配存储空间,读取速度慢

char固定长,读取速度快,占用空间

CharField有一个必填参数:

max_length 最大长度

integerField整型

范围--2147483648-2147483647

数量、评论次数、浏览次数

DecimalField带固定精度的十进制数

有两个必须的参数:

  • max_digits

号码中允许的最大位数。请注意,此数字必须大于decimal_places

  • decimal_places

与数字一起存储的小数位数,如果参与计算,需要转成浮点数

FloatField浮点数

imageField图片字段

里面写了上传图片的方法,不需要自己写上传代码了。imageField自动把图片写入到django后台指定的目录下,使用upload_to这个参数来指定上传位置

uoload_to 上传图片时指定位置

DateField  日期字段

datetime.datetime

不指定参数时,每一次创建都必须填写,不可以为空

指定参数以后,可以默认:

auto_now:第一次操作这一行数据时自动更新当前到表中

auto_now_add:第一次创建是保存的时间,以后操作不会发生变化

BooleanField布尔类型

真值和假值0和1

判断状态时使用

用户是否激活

商品是否删除

EmailField邮箱字段

带邮箱正则验证的,自动判断邮箱的格式

TextField大文本字段

编辑新闻、小说网站、商品详情介绍

字段选项

null

允许数据库字段为空

blank

为True时,模板当中的表验证允许为空

choice

class User(models.Model) :

       """

         用户名、密码、邮箱、手机号

      """

        SEX_CHOICE = (

             (0,‘男’),

              (0,‘女’)

    username = models.CharField(max_length=64, unique=True, verbose_name='用户名')
    password = models.CharField(max_length=128, blank=True)
    email = models.EmailField(max_length=64, null=True)
    sex = models.IntegerField(choices=SEX_CHOICE, default=0)  

default

默认值,为当前列添加一个默认值,用户不需要在前端输入

primary_key

设置为主键

unique唯一

verbose_name

把该属性在admin当中变为一个可名称

Meta选项

是djangoOrm内部的一个类,为orm提供一些操作

abstract

抽象基类

可复用的,共有的,abstract为True时,可以继承使用

db_table

为表名进行重命名

ordering

指定表的默认排序规则

verbose_name

在admin中表的显示名称

verbose_name_plural

去掉对象的复数,也就是admin当中显示时的s

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值