django內建的元件,幫我們開發者做連表操作, 使用於一張表跟多張表關聯。
使用:contenttype
用於關聯表的名稱
genericforeignkey
幫助快速實現content_type操作,將之對應起來
genericrelation
用於反向查詢 不生成資料表
from django.db import models
from django.contrib.contenttypes.fields import genericforeignkey, genericrelation
from django.contrib.contenttypes.models import contenttype
# create your models here.
class
course
(models.model)
:"""普通課"""
title = models.charfield(max_length=32)
# 僅用於反向查詢,不生成資料表
price_policy_list = genericrelation(
"pricepolicy"
)class
degreecourse
(models.model)
:"""學位課"""
title = models.charfield(max_length=32)
class
pricepolicy
(models.model)
:"""**策略"""
price = models.integerfield(
) period = models.integerfield(
) content_type = models.foreignkey(contenttype, verbose_name=
'關聯的表名稱'
) object_id = models.integerfield(verbose_name=
'關聯的表中資料行的id'
)# 幫助快速實現content_type操作
:# 1 為學位課「python 全棧」 新增乙個**策略: 1個月9.9的資料
obj = models.degreecourse.objects.
filter
(title=
'python全棧'
).first(
) models.pricepolicy.objects.create(price=
9.9, period=
30, content_object=obj)
# 2 查詢出課程id 為1的所有的**策略
course = models.course.objects.
filter(id
=1).first(
) price_policys = course.price_policy_list.
all(
)print
(price_policys,
'這就是所有的**'
'新增成功'
)
django元件的forms元件
一.校驗字段功能 models.py class userinfo models.model name models.charfield max length 32 pwd models.charfield max length 32 email models.emailfield tel mode...
Django 內建分頁
from django.core.paginator import paginator,page userlist models.user.objects.all paginator paginator userlist,10 per page 每頁顯示條目數量 count 資料總個數 num pa...
django 內建標籤
控制當前自動轉義的行為,有on和off兩個選項 定義乙個子模板可以覆蓋的塊,在模板中 上一節 有使用示例 注釋,和 之間的內容被解釋為注釋 乙個防止csrf攻擊 跨站點請求偽造 的標籤 迴圈給出的字串或者變數,可以混用 值得注意的是,這裡的變數的值預設不是自動轉義的,要麼你相信你的變數,要麼你就是用...