Python 在Django中实例化共享线程对象的位置,相当于pyramid注册表?

Python 在Django中实例化共享线程对象的位置,相当于pyramid注册表?,python,django,sqlalchemy,pyramid,wsgi,Python,Django,Sqlalchemy,Pyramid,Wsgi,我将我的一些框架不可知代码插入Django而不是金字塔。它使用SQLAlchemy,并有一个定制的会话工厂对象来获取db会话。在pyramid中,我在主应用程序方法中在服务器启动时实例化它,并将其附加到注册表,以便我的应用程序的所有其他部分都可以访问它。我想知道Django中实例化和提供共享工厂的正确方法是什么。有没有什么地方可以规范地放置这样的东西,这样Django用户就可以很容易地找到它,并且代码对于习惯Django模式的人来说是可读的 谢谢我将SQLAlchemy/SQLSoup连接放在m

我将我的一些框架不可知代码插入Django而不是金字塔。它使用SQLAlchemy,并有一个定制的会话工厂对象来获取db会话。在pyramid中,我在主应用程序方法中在服务器启动时实例化它,并将其附加到注册表,以便我的应用程序的所有其他部分都可以访问它。我想知道Django中实例化和提供共享工厂的正确方法是什么。有没有什么地方可以规范地放置这样的东西,这样Django用户就可以很容易地找到它,并且代码对于习惯Django模式的人来说是可读的


谢谢

我将SQLAlchemy/SQLSoup连接放在models.py,因为它与持久性和模型视图的模型层相关

如果你不使用依赖于第一个的应用程序,比如Django.contrib.admin或Django.contrib.auth,你甚至可以用SQLAlchemy替换Django ORM。

我不认为,在设置模块之外,Django中没有任何适合模式的东西。为什么不在你模块的u init_uu.py中呢?随着应用程序的添加,将适当的字符串添加到settings.INSTALLED_应用程序中,您可以确保模块将在启动时导入,并且nessessary对象将被实例化。感谢alko,这将是哪个init.py?在django应用程序的顶层?它可以访问设置命令吗?