日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

ORM 模型层

發布時間:2025/4/16 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ORM 模型层 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一個模型就是一個單獨的,確定的數據的信息源,包含了數據的字段和操作方法。通常,每個模型映射為一張數據庫中的表

基本原則:

  • 每個模型在Django中的存在形式為一個python類
  • 每個模型都是django.db.modeks.Model的子類
  • 模型的每個字段(屬性)代表數據表的某一列
  • Django將自動為你生成數據庫訪問API.

簡單示例

下面的模型定義了一個“人”,它具有first_name和last_name字段:

from django.db import modelsclass Person(models.Model):first_name = models.CharField(max_length=30)last_name = models.CharField(max_length=30)

這里每個字段都是一個類屬性,每個類屬性表示數據表中的一個列。

上面代碼,如下滿原生SQL語句

CREATE TABLE app01_person ("id" serial NOT NULL PRIMARY KEY,"first_name" varchar(30) NOT NULL,"last_name" varchar(30) NOT NULL );

注意:

表名app01_person 由django自動生成,默認格式為“項目名稱+下劃線+小寫類名”。這個類名規則也可以重寫

Django會默認自動創建自增主鍵id,(也可以自己指定主鍵)。

通常,我們都默認把模型編寫都寫在app下的models.py

創建了模型之后,在使用它之前,你需要先在settings文件中的INSTALLED_APPS 處,注冊models.py文件所在的myapp。看清楚了,是注冊app,不是模型,也不是models.py。

當我們對模型進行增、刪、改時,需執行python manage.py makemigrations?? 和 python manage.py migratee

模型字段fields

字段是模型中最重要的內容之一,也是唯一必須的部分。

字段在python中表現為一個類屬性,體現為數據表中一個列。不要使用clean 、save 、delete 等django內置的模型API名字,防止命名沖突。

?注意字段的寫法

from django.db import models# 音樂家 class Musician(models.Model):first_name = models.CharField(max_length=50)last_name = models.CharField(max_length=50)instrument = models.CharField(max_length=100)class Album(models.Model):artist = models.ForeignKey(Musician, on_delete=models.CASCADE)name = models.CharField(max_length=100)release_date = models.DateField()num_stars = models.IntegerField()

字段名命名約束

Django不允許下面兩種字段名:

轉載于:https://www.cnblogs.com/jassin-du/p/8343527.html

總結

以上是生活随笔為你收集整理的ORM 模型层的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。