您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Django之外使用Django模型?

如何在Django之外使用Django模型?

如果你看看如何Django的应用程序被加载,我认为你需要运行安装在你的应用程序models.pymodels/init.py与不db/__init__.py

setup(set_prefix = True)通过以下方式配置Django:

正在加载设置。设置日志记录。如果set_prefix为True,则将URL解析器脚本前缀设置为FORCE_SCRIPT_NAME(如果已定义),否则设置为/。初始化应用程序注册表。该函数自动调用

通过Django的WSGI支持运行HTTP服务器时。调用管理命令时。在其他情况下,例如在纯Python脚本中,必须显式调用它。

应用程序注册表分为三个阶段初始化。在每个阶段,Django都会按照INSTALLED_APPS的顺序处理所有应用程序。

首先,Django将每个项目导入INSTALLED_APPS中。

如果是应用程序配置类,则Django会导入应用程序的根包,该根包由其name属性定义。如果是Python软件包,则Django将创建认的应用程序配置。

换句话说,应用程序的根包和定义应用程序配置类的模块不应导入任何模型,即使是间接导入的模型也不应。

但是,为了避免不必要地限制INSTALLED_APPS的顺序,强烈建议您在此阶段不要导入任何模型。

一旦完成此阶段,就可以使用对应用程序配置(例如get_app_config())进行操作的API。

然后,Django尝试导入每个应用程序的models子模块(如果有)。

一旦完成此阶段,就可以使用在诸如get_model()之类的模型上运行的API。

最后,Django运行每个应用程序配置的ready()方法

Go 2022/1/1 18:42:44 有351人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶