django mysql字段类型_Django字段类型介绍

本文介绍了如何使用Django ORM修改表结构、添加字段及数据验证,涵盖了makemigrations和migrate命令的应用,以及数据库基本类型和验证字段如CharField、EmailField的实战。还探讨了自增字段、数据库迁移与管理后台操作过程。
摘要由CSDN通过智能技术生成

一,通过makemigrations,migrate来修改数据,

1.Django的ORM支持修改表结构,修改完以后,执行

python manage.py makemigrations

python manage.py migrate

这两句,就会看到更新了。超过长度的数据就会丢了。

135603c965386f1955fee33ec827142b.png

2.给数据库增加一列,

58821fe46b513f2d97582f1f6b085ca1.png

此时会有错误提示,提示需要输入值。因为创建这行的时候没有注明null=False.

e241a919ea14318b53ab7308b4ab38eb.png

至此数据库就已经更新了。

7088b49a1db6135225a0d2f57f8229b5.png

或者在添加的时候,指定为空也是可以的。

gender=models.CharField(max_length=60,null=True)

python manage.py makemigrations

python manage.py migrate

6079720b021cfbab7fde6859380d04ca.png

注释掉这一句的话,#gender=models.CharField(max_length=60,null=True),执行

python manage.py makemigrations

python manage.py migrate

最后一列就被删除掉了。

每做完1个操作,都必须执行下列两句才能生效:

python manage.py makemigrations

python manage.py migrate

二,数据库中的数据类型

2.1 基本的数据库中的数据类型:字符串,数字,时间,二进制。CharField,URLFiled,EmailField的作用是用来给django的admin做验证的。对数据库的普通用户数据是不起作用的。

CharField 字符串

URLField  也是字符串类型

email=models.EmailField(max_length=19) 也是字符串类型

2.2 测试EmailField的功能,给Django的admin做格式验证。对表中的内容是没有做限制的。

先新增一列,增加完了执行那2句才能生效。

dea09048855f8592794a3d88856da160.png

2.3 添加程序,有了admin后台管理

e907de360a0f9a705ae8e80fd968c656.png

2.4增加上对应关系

20a7fb66fd67a3a2c651348911a0d0b3.png

2.5 运行起来,现在就可以登录后台管理页面了。

b27167c10682e671d97c4f53f976f35b.png

2.6 创建超级用户,然后登录

658e922f0ae2e503e375ef1af9a41470.png

2.7 用root, root!23456登录

ef82555c653b49118c4abf9a11250ade.png

URL格式验证 test=models.URLField(max_length=19,null=True)

IP格式验证 test=models.GenericIPAddressField() ipv1/ipv6都适用。

三,

3.1 创建了一个自增的列,AutoField代表是自增列。MySQL表里面只能有1个自增列,那么默认的自增id列就不出现了。现在表里面只有自己定义的uid 和 caption两列。

uid=models.AutoField(primary_key=True)

82196b02b71a4aaac85555446cae5648.png

26f1bb29ff08ec7402343aac0f6e395b.png

四,本节笔记

1,根据类自动创建数据库表

#app下的models.py

python manage.py makemigrations

python manage.py migrate

字段:

字符串类型

数字

时间

二进制

自增(primary_key=True)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值