2

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

4

2 回答 2

2

默认管理器附加在函数ensure_default_managerdjango.db.models.manager。默认情况下,它附加一个类管理器Manager。您可以对该函数进行monkeypatch 以附加不同的(子类)Manager

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

于 2012-04-07T15:24:55.540 回答
0

如果您真的需要这样做,请修改 django 代码本身。猴子修补也是一种选择,有很多技术可以解决这个问题。

于 2012-04-07T20:00:53.470 回答