中介模型針對的是manytomany(多對多)的時候第三張表的問題,
中介模型其實指的就是我們不通過django建立第三張表,如果自己不建立第三張表,而是由django給我們建立,那就不存在中介模型
class book(models.model):這時候django會自動幫我們建立地上那張表,如下:title = models.charfield(max_length=32)
authors = models.manytomanyfield(to='author')
class author(models.model):
name = models.charfield(max_length=32)
這時候執行manage命令後就會生成一張第三張表,如下:
圖中可以看出,django建立foreignkey的時候會在字段後自動新增'_id',所以,我們在寫第三張表字段的時候就不用加_id了,如下:
class book(models.model):1、中介模型的第三張表是自己建立的,所以可以自己任意新增額外的字段,而django自建立的第三張表的字段是固定的''''''
title = models.charfield(max_length=32)
authors = models.manytomanyfield(to='author',through='book2author')
class author(models.model):
name = models.charfield(max_length=32)
class book2author(models.model):
book_id = models.foreignkey(to='book')
author_id = models.foreignkey(to='author')
2、中介模型沒有add,set , remove,clear 方法
中介模型針對的是manytomany(多對多)的時候第三張表的問題,
中介模型其實指的就是我們不通過django建立第三張表,如果自己不建立第三張表,而是由django給我們建立,那就不存在中介模型
class book(models.model):這時候django會自動幫我們建立地上那張表,如下:title = models.charfield(max_length=32)
authors = models.manytomanyfield(to='author')
class author(models.model):
name = models.charfield(max_length=32)
這時候執行manage命令後就會生成一張第三張表,如下:
圖中可以看出,django建立foreignkey的時候會在字段後自動新增'_id',所以,我們在寫第三張表字段的時候就不用加_id了,如下:
class book(models.model):1、中介模型的第三張表是自己建立的,所以可以自己任意新增額外的字段,而django自建立的第三張表的字段是固定的''''''
title = models.charfield(max_length=32)
authors = models.manytomanyfield(to='author',through='book2author')
class author(models.model):
name = models.charfield(max_length=32)
class book2author(models.model):
book_id = models.foreignkey(to='book')
author_id = models.foreignkey(to='author')
2、中介模型沒有add,set , remove,clear 方法
中介模型針對的是manytomany(多對多)的時候第三張表的問題,
中介模型其實指的就是我們不通過django建立第三張表,如果自己不建立第三張表,而是由django給我們建立,那就不存在中介模型
class book(models.model):這時候django會自動幫我們建立地上那張表,如下:title = models.charfield(max_length=32)
authors = models.manytomanyfield(to='author')
class author(models.model):
name = models.charfield(max_length=32)
這時候執行manage命令後就會生成一張第三張表,如下:
圖中可以看出,django建立foreignkey的時候會在字段後自動新增'_id',所以,我們在寫第三張表字段的時候就不用加_id了,如下:
class book(models.model):1、中介模型的第三張表是自己建立的,所以可以自己任意新增額外的字段,而django自建立的第三張表的字段是固定的''''''
title = models.charfield(max_length=32)
authors = models.manytomanyfield(to='author',through='book2author')
class author(models.model):
name = models.charfield(max_length=32)
class book2author(models.model):
book_id = models.foreignkey(to='book')
author_id = models.foreignkey(to='author')
2、中介模型沒有add,set , remove,clear 方法
orm之中介模型
中介模型針對的是manytomany 多對多 的時候第三張表的問題,中介模型其實指的就是我們不通過django建立第三張表,如果自己不建立第三張表,而是由django給我們建立,那就不存在中介模型 class book models.model title models.charfield max ...
設計模式之中介模式
中介模式 用乙個中介物件來封裝一系列的物件的互動,中介者使各物件不需要顯示地相互引用,從而使耦合鬆散,而且可以獨立地改變他們之間的互動 比如 房客與房東之間的互動過程是由中介來承擔的,房客不需要知道房東是誰,房東也不需要知道房客是誰,有什麼問題,直接找找中介就可以了。中介模式的三個物件 互動物件 中...
CPP之中介者設計模式
1 故事 公司組織去奧林匹克公園team building,主題是 把信送給加西亞 頭天,組長組織大家秘密商討,主題時如何奪取第二天的ipad2大獎的計畫。由於人員眾多,組長怕大家不認識,要求每個人用一句話形容自己,然後順時針把剩下的所有人描述自己的話再重複出來,這樣經過2輪,名字基本記住了,雖然免...