Django4.0 管理器-執(zhí)行關(guān)系

2022-03-16 17:36 更新

無論您在自定義的 ?Manager ?中添加了什么特性,都必須能夠?qū)??Manager ?實(shí)例進(jìn)行簡單的復(fù)制;也就是說,以下代碼必須有效:

>>> import copy
>>> manager = MyManager()
>>> my_copy = copy.copy(manager)

Django 在某些查詢期間對(duì)管理器對(duì)象進(jìn)行淺拷貝;如果您的管理器無法被復(fù)制,那么這些查詢將失敗。
對(duì)于大多數(shù)的資源管理器來說,這不是問題。若你只是為 ?Manager ?添加簡單的方法,一般不會(huì)疏忽地把 ?Manager ?變的不可拷貝。但是,若重寫了 ?Manager ?對(duì)象用于控制對(duì)象狀態(tài)的 ?__getattr__? 或其它私有方法,你需要確認(rèn)你的修改不會(huì)影響 ?Manager ?被復(fù)制。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)