在Django启动时初始化一个类并在视图中引用它

2 投票
2 回答
907 浏览
提问于 2025-04-17 13:16

我想在Django启动的时候做一些预处理(我在urls.py里放了一个只运行一次的启动脚本),然后在我的视图中使用创建的对象实例。我该怎么做呢?

2 个回答

0

你可以使用一个叫做上下文处理器的东西,把它添加到你的模板上下文中。

如果你想在视图中使用,而不是在模板中,那你可以创建一个基础的视图类,把这个东西放进去,或者直接在你的视图模块中导入它的引用(然后直接使用)。

要注意的是,每个django线程可能在内存中有这个对象的不同副本,所以这个东西最好只用来读取。如果你对它进行了修改,可能会遇到很多麻烦。

2

试着使用单例设计模式。

撰写回答