Django中的連線查詢

2021-09-28 12:36:57 字數 3256 閱讀 6494

django中的連線查詢

②建立一對一對映語法

class

wife

(models.model)

: name = models.charfield(max_length=

30, verbose_name=

'姓名'

) age = models.integerfield(verbose_name=

'年齡'

)# 增加一對一的關係對映,關聯到author表上

# 在wife表中自動增加一列,並且是author表中的主鍵值,且具有唯一約束

author = models.onetoonefield(author, null=

true

, verbose_name=

'丈夫'

)

逆向查詢:通過author查詢wife

def

oto_views

(request)

: wifes = wife.objects.

all(

) authors = author.objects.

all(

)return render(request,

'oto.html'

,locals()

)

>

>

姓名:}p

>

>

年齡:}p

>

>

丈夫:}p

>

>

姓名:}p

>

>

年齡:}p

>

>

妻子:}p

>

body

>

2、一對多的對映(1:m)常用

②建立一對多對映語法

class

book

(models.model)

: title = models.charfield(max_length=

50, verbose_name=

'書名'

) publication_date = models.datefield(default=datetime.now(

), verbose_name=

'出版日期'

)# 增加一對多的關係對映,並關聯到publisher表上

# 在book表中自動增加一列,並且是publisher表中的主鍵值,且沒有唯一約束

publisher = models.foreignkey(publisher, null=

true

, verbose_name=

'出版社'

)

逆向查詢:通過publisher查詢book

def

otm_views

(request)

: books = book.objects.

all(

) publisher = publisher.objects.

all(

).first(

) bookset = publisher.book_set.

all(

)return render(request,

'otm.html'

,locals()

)

>

>

書名:}p

>

>

>

>

出版社:}p

>

>

出版社:}p

>

>

出版書籍:}p

>

body

>

3、多對多的對映(m:m)

②建立一對一對映語法

class

author

(models.model)

: name = models.charfield(max_length=

30, verbose_name=

'姓名'

) age = models.integerfield(verbose_name=

'年齡'

) email = models.emailfield(null=

true

, verbose_name=

'郵箱'

) picture = models.imagefield(null=

true

, upload_to=

'static/upload/usring'

, verbose_name=

'使用者頭像'

)# 增加多對對對映關係

publisher = models.manytomanyfield(publisher, null=

true

, verbose_name=

'出版社'

)

逆向查詢:通過publisher查詢author

def

mtm_views

(request)

:# 正向查詢

author = author.objects.get(id=

4)publisher_list = author.publisher.

all(

)# 逆向查詢

publisher = publisher.objects.get(id=

6)author_list = publisher.author_set.

all(

)return render(request,

'mtm.html'

,locals()

)

>

>

作者姓名:}p

>

>

簽約出版社:}p

>

>

出版社名稱:}p

>

>

>

body

>

django查詢中的 in

rackid request.post rackid retdir rackid rackid racks rack.objects.filter rackid icontains rackid equipments equipment.objects.filter rack in racks 可以...

python中Django連線mysql資料庫配置

完成之後 輸入pytho nmanage.py check檢查配置是否有問題 當沒有出現報錯時,接下來輸入python manage.py makemigration語句完成資料庫的同步 沒有出錯接下來輸入 python manage.py migrate完成資料庫的生成。在檢查的時候可能出現的問題...

django中sql語句的查詢

執行原始sql查詢 當 模型查詢api 不要走得足夠遠,你 可以回到寫原始sql。django提供了兩種方式執行原始 sql查詢 您可以使用 manager.raw 來 執行原始查詢和 回歸模型例項 或者你可以完全避免模型層 執行自定義sql直接 執行原始查詢 的 生 經理的方法可以用來執行原始的s...