Django更改默认对象管理器

时间:2012-04-07 15:03:38

标签: python django

有没有办法更改所有模型的默认对象管理器? (包括第三方应用程序上的对象管理器)

2 个答案:

答案 0 :(得分:2)

默认管理器附加在ensure_default_manager中的django.db.models.manager函数中。它默认附加了类Manager的管理器。你可以monkeypatch这个函数来附加一个不同的(子类)Manager

但是你必须考虑这是否是你想要解决的问题的最理想的解决方案。

答案 1 :(得分:0)

如果你真的需要这样做,修改django代码本身。猴子补丁也是一种选择,那里有很多技术。

相关问题