-
將指定的模型對象添加到相關對象集中。
例子:
>>> b = Blog.objects.get(id=1) >>> e = Entry.objects.get(id=234) >>> b.entry_set.add(e) # Associates Entry e with Blog b.在上麵的示例中,在
關係的情況下,ForeignKey用於執行更新。這要求對象已經被保存。QuerySet.update()您可以使用
bulk=False參數來讓相關管理器通過調用e.save()來執行更新。但是,將
add()與多對多關係一起使用不會調用任何save()方法(bulk參數不存在),而是使用創建關係。如果您需要在創建關係時執行一些自定義邏輯,請監聽QuerySet.bulk_create()信號,該信號將觸發m2m_changedpre_add和post_add動作。在已存在的關係上使用
add()不會複製該關係,但仍會觸發信號。對於多對多關係,
add()接受模型實例或字段值,通常是主鍵,作為*objs參數。如果需要,使用
through_defaults參數為新的中間模型實例指定值。您可以將可調用對象用作through_defaults字典中的值,並且它們將在創建任何中間實例之前被評估一次。
本文介紹 django.db.models.fields.related.RelatedManager.add 的用法。
聲明
add(*objs, bulk=True, through_defaults=None)
相關用法
- Python Django RelatedManager.set用法及代碼示例
- Python Django RelatedManager.remove用法及代碼示例
- Python Django RelatedManager.clear用法及代碼示例
- Python Django RelatedManager.create用法及代碼示例
- Python Django Response.json用法及代碼示例
- Python Django Repeat用法及代碼示例
- Python Django RequestContext用法及代碼示例
- Python Django Reverse用法及代碼示例
- Python Django Redirect用法及代碼示例
- Python Django Response.resolver_match用法及代碼示例
- Python Django Response.context用法及代碼示例
- Python Django RedirectView用法及代碼示例
- Python Django RequireDebugFalse用法及代碼示例
- Python Django Replace用法及代碼示例
- Python Django RandomUUID用法及代碼示例
- Python RLock acquire()用法及代碼示例
- Python Random.Choices()用法及代碼示例
- Python Django REQUIRED_FIELDS用法及代碼示例
- Python Django Radians用法及代碼示例
- Python Django RawSQL用法及代碼示例
- Python Django RadioSelect用法及代碼示例
- Python Django Right用法及代碼示例
- Python Django RangeOperators用法及代碼示例
- Python RLock release()用法及代碼示例
- Python PIL RankFilter()用法及代碼示例
注:本文由純淨天空篩選整理自djangoproject.com大神的英文原創作品 django.db.models.fields.related.RelatedManager.add。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
