我注意到Django懒散地加载项目中使用的模块。当我第一次在本地机器上运行调试服务器,然后从站点加载一个页面时,调试器告诉我Django刚刚导入了100多个模块。
我希望Django在启动时导入所有模块,而不是等待第一个请求。这将使我的开发更加方便,因为我不必在每个第一个请求上等待更多的时间。
这个是可能的吗?
发布于 2013-08-17 21:04:13
最后,我只是在我的manage.py中添加了一个这样的部分,就在execute_from_command_line行之前:
argv_string = ' '.join(sys.argv)
if ('gunicorn' in argv_string) or ('runserver' in argv_string):
import all_my_stuff发布于 2013-08-17 03:46:39
它看起来像这个库:https://github.com/ojii/django-load非常简单,它有一个函数可以从Django内部加载一个模块。如果将这一技术与Django入口点挂钩(如http://eldarion.com/blog/2013/02/14/entry-point-hook-django-projects/)结合起来,您应该能够在启动时显式加载模块。(我没有亲自尝试,但看起来是可行的。)
https://stackoverflow.com/questions/18216975
复制相似问题