一,通過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)
