新聞中心
要將修改保存至數(shù)據(jù)庫(kù)中已有的某個(gè)對(duì)象,使用 ?save()?。

創(chuàng)新互聯(lián)自成立以來(lái),一直致力于為企業(yè)提供從網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個(gè)性化軟件開(kāi)發(fā)等基于互聯(lián)網(wǎng)的全面整合營(yíng)銷(xiāo)服務(wù)。公司擁有豐富的網(wǎng)站建設(shè)和互聯(lián)網(wǎng)應(yīng)用系統(tǒng)開(kāi)發(fā)管理經(jīng)驗(yàn)、成熟的應(yīng)用系統(tǒng)解決方案、優(yōu)秀的網(wǎng)站開(kāi)發(fā)工程師團(tuán)隊(duì)及專(zhuān)業(yè)的網(wǎng)站設(shè)計(jì)師團(tuán)隊(duì)。
有一個(gè)已被存入數(shù)據(jù)庫(kù)中的 ?Blog? 實(shí)例 ?b5?,本例將其改名,并在數(shù)據(jù)庫(kù)中更新其記錄:
>>> b5.name = 'New name'
>>> b5.save()這在幕后執(zhí)行了 ?UPDATE ?SQL 語(yǔ)句。Django 在你顯示調(diào)用 save() 后才操作數(shù)據(jù)庫(kù)。
保存 ForeignKey 和 ManyToManyField 字段
更新 ?ForeignKey ?字段的方式與保存普通字段的方式相同——只需將正確類(lèi)型的實(shí)例分配給相關(guān)字段。本例為 ?Entry ?類(lèi)的實(shí)例 ?entry ?更新了 ?blog ?屬性,假設(shè) ?Entry ?和 ?Blog ?的實(shí)例均已保存在數(shù)據(jù)庫(kù)中(因此能在下面檢索它們):
>>> from blog.models import Blog, Entry
>>> entry = Entry.objects.get(pk=1)
>>> cheese_blog = Blog.objects.get(name="Cheddar Talk")
>>> entry.blog = cheese_blog
>>> entry.save()更新 ?ManyToManyField字段有點(diǎn)不同——在字段上使用 ?add()? 方法為關(guān)聯(lián)關(guān)系添加一條記錄。本例將 ?Author ?實(shí)例 ?joe ?添加至 ?entry ?對(duì)象:
>>> from blog.models import Author
>>> joe = Author.objects.create(name="Joe")
>>> entry.authors.add(joe)要一次添加多行記錄至 ?ManyToManyField ?字段,在一次調(diào)用 ?add()? 時(shí)傳入多個(gè)參數(shù),像這樣:
>>> john = Author.objects.create(name="John")
>>> paul = Author.objects.create(name="Paul")
>>> george = Author.objects.create(name="George")
>>> ringo = Author.objects.create(name="Ringo")
>>> entry.authors.add(john, paul, george, ringo)Django 會(huì)在添加或指定錯(cuò)誤類(lèi)型的對(duì)象時(shí)報(bào)錯(cuò)。
分享名稱(chēng):創(chuàng)新互聯(lián)Django4.0教程:Django4.0執(zhí)行查詢(xún)-將修改保存至對(duì)象
標(biāo)題網(wǎng)址:http://m.fisionsoft.com.cn/article/cccgisc.html


咨詢(xún)
建站咨詢(xún)
