我从一个 django 实例运行多个站点,并期望该框架最终能够通过一个或多个安装为数百个站点提供服务。
我需要根据当前请求修补一些 django 设置。我已经编写了一些中间件来对设置进行猴子修补,但我需要在调用中间件之前修补这些设置,因为其他应用程序没有进行猴子修补的更改(即应用程序运行然后中间件运行,因此应用程序不会不要使用猴子补丁设置)。
我还应该补充一点,这主要是为了我尚未编写的第三方应用程序的利益,所以我不想四处添加装饰器或类似的东西,因为这会扰乱我的升级路径。
So:
- 如何访问应用程序中的当前请求init.py 文件?
- 是否有应用程序的init.py 每个请求调用一次还是只调用一次?如果只有一次,我还能如何执行此操作,以便我可以根据请求操作一次设置?
- 进行这种猴子修补安全吗?我知道它使代码更加不透明,但我不想在每个站点使用不同的 wsgi 文件,因为我希望允许用户编辑其中一些设置,并让我的猴子修补来自数据库。
- 是否有更好的解决方案允许将某些设置存储在数据库中?
这个模块 - django-tupperware 可以满足您的要求:https://bitbucket.org/jiaaro/django-tupperware/ https://bitbucket.org/jiaaro/django-tupperware/试一试。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)