我应该在哪里将'初始化代码'放在Django应用程序中?

时间:2014-04-15 01:50:17

标签: python django web

我希望我的Django应用程序中的一些代码只能在启动服务器时执行一次,而不是按照请求执行。

具体来说,我想将一些数据库表加载到内存中。这些表包含一些不会根据请求更改的“元数据”。像这样:

ProductTypesData = None;
def loadProductTypesData():
     productTypes = ProductType.objects.all();
     for ptype in productTypes:
         ptype_data = {
             "id":ptype.id,
             "name": ptype.name,
             "description":ptype.desc
         };
         ProductTypesData.append(ptype_data);
loadProductTypesData();

我应该把这段代码放在哪里? 关于django初始化的其他Q / A建议把它放在urls.py中。但是在urls.py中导入模型对我来说似乎不合逻辑。

我可以将代码放在models.py中吗?它是否只执行一次(如果可以接受不在django启动时执行)?

0 个答案:

没有答案