django中模型类的创建
ORM框架:
1、一般需要在子應用projects中的models.py定義模型類(相當于數據庫中的一張表)
2、必須繼承Model或者Model的子類
3、在模型類中定義類屬性(必須得為Field子類)相當于數據表中的字段
4、 CharField---》varchar
IntegerField---》integer
BooleanField---》bool
5、在migrations里,存放遷移腳本:python manage.py makemigrations 子應用名(projects),(如果不指定子應用名,會把所有的子應用生成遷移腳本)
6、執行遷移腳本:python manage.py migrate projects
7、鏈接數據庫
8、查詢遷移腳本生成的SQL語句:python manage.py sqlmigrate 子應用名 0001_initial(遷移腳本名(無需.py))
9、生成的數據表名稱默認為:子應用名_模型類名小寫
10、默認會自動創建一個名為id的自增逐漸
?如圖:創建一個項目表
?字段說明:
a、CharField類型必須指定max_length參數(該字段的最大字節數)max_length=20表示最大20個字符
b、項目名稱可能會重復,為了不讓項目名稱重復,需要給一個字段添加唯一約束,unique=True(默認為False)
c、使用default 指定默認值(如果指定默認值后,在創建記錄時,該字段傳遞,會使用默認值)
d、null=True指定,前端創建數據時,可以指定該字段為null,默認為null=False,DRF進行反序列化器輸入時才有效
e、blank=True指定,前端創建數據時,可以指定該字段為空字符串,默認為blank=False,DRF進行反序列化器輸入時才有效
f、在DateFiled、DateField等字段中,指定auto_now_add=True,在創建一條記錄時,會自動創建記錄時的時間作為該字段的值,后續在更新數據時,就不再修改
g、在DateFiled、DateField等字段中,指定auto_now=True,在更新一條記錄時,會自動將更新記錄的時間作為該字段的值,
h、只要修改表(ORM框架),就需要重新生成遷移腳本 python manage.py makemigrations 子應用名
總結
以上是生活随笔為你收集整理的django中模型类的创建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django中HttpResponse和
- 下一篇: JDK的安装与环境变量配置