W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
一旦創(chuàng)建 數(shù)據(jù)模型 后,Django 自動(dòng)給予你一套數(shù)據(jù)庫(kù)抽象 API,允許你創(chuàng)建,檢索,更新和刪除對(duì)象。本頁(yè)介紹如何使用這些 API。
在本指南中(以及在參考資料中),我們將提及以下模型,它們構(gòu)成了一個(gè)博客應(yīng)用程序:
from datetime import date
from django.db import models
class Blog(models.Model):
name = models.CharField(max_length=100)
tagline = models.TextField()
def __str__(self):
return self.name
class Author(models.Model):
name = models.CharField(max_length=200)
email = models.EmailField()
def __str__(self):
return self.name
class Entry(models.Model):
blog = models.ForeignKey(Blog, on_delete=models.CASCADE)
headline = models.CharField(max_length=255)
body_text = models.TextField()
pub_date = models.DateField()
mod_date = models.DateField(default=date.today)
authors = models.ManyToManyField(Author)
number_of_comments = models.IntegerField(default=0)
number_of_pingbacks = models.IntegerField(default=0)
rating = models.IntegerField(default=5)
def __str__(self):
return self.headline
為了用 Python 對(duì)象展示數(shù)據(jù)表對(duì)象,Django 使用了一套直觀的系統(tǒng):一個(gè)模型類代表一張數(shù)據(jù)表,一個(gè)模型類的實(shí)例代表數(shù)據(jù)庫(kù)表中的一行記錄。
要?jiǎng)?chuàng)建一個(gè)對(duì)象,用關(guān)鍵字參數(shù)初始化它,然后調(diào)用 ?save()
? 將其存入數(shù)據(jù)庫(kù)。
假設(shè)模型都位于文件 ?mysite/blog/models.py
? 中,這是一個(gè)例子:
>>> from blog.models import Blog
>>> b = Blog(name='Beatles Blog', tagline='All the latest Beatles news.')
>>> b.save()
這在幕后執(zhí)行了 ?INSERT
SQL 語(yǔ)句。Django 在你顯式調(diào)用 ?save()
? 才操作數(shù)據(jù)庫(kù)。
?save()
? 方法沒(méi)有返回值。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: