zoukankan      html  css  js  c++  java
  • Django字段类型介绍

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

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

      python manage.py makemigrations
      python manage.py migrate

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

    2.给数据库增加一列,

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

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

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

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

     python manage.py makemigrations
     python manage.py migrate

    注释掉这一句的话,#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句才能生效。

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

    2.4增加上对应关系

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

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

    2.7 用root, root!23456登录

    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)

    四,本节笔记

    	1,根据类自动创建数据库表
    		#app下的models.py
    		
    		python manage.py makemigrations
    		python manage.py migrate
    		
    		字段:
    			字符串类型
    			数字
    			时间
    			二进制
    			自增(primary_key=True)
    
  • 相关阅读:
    线段树套线段树
    hdu6800
    半平面交 poj1279
    Unity:创建了一个自定义的找子物体的脚本
    Unity:一个简单的开门动画
    hdu 4940
    hdu 4939
    hdu 4932
    hdu 4912
    AC自动机
  • 原文地址:https://www.cnblogs.com/momo8238/p/7520790.html
Copyright © 2011-2022 走看看