1

djangoモデルクラスはシングルトン/一度だけ実装されていますか? そのような

from .models import MODEL

# some code

a = MODEL

# in some other file
from .models import MODEL
# some code

b = MODEL

# some code

a is b # always True?
4

1 に答える 1

1

モデル クラス自体はシングルトンではなく、複数回インスタンス化できますが、Python のインポート メカニズムではインポート パスごとに 1 回だけインスタンス化されます。同じモジュールの後続のインポートは、既存のインポートへの参照をコピーします。

TL;DR: 奇妙なインポート エッジ ケースを除いて、コードは機能するはずです。

于 2013-05-28T03:30:27.287 に答える