我正在开发一个 django 应用程序。下面给出了对我的问题重要的模块:
globals.py --> 包含在整个应用程序中使用的常量。SITE_NAME
并且SITE_DOMAIN
是其中两个,用于填充一些字符串。以下是我如何定义它们:
from django.contrib.sites.models import Site
...
SITE_DOMAIN = Site.objects.get_current().domain
SITE_NAME = Site.objects.get_current().name
models.py --> 模型存在于这个模块中。从 globals.py 导入一些常量
some_command.py --> 一个从全局变量中导入一些常量的命令。
执行时,该命令从globals.py导入一个常量并遇到循环导入问题:在globals.py内部,从站点应用程序调用get_current() ,站点应用程序依次导入具有从globals.py导入的models.py也是。
编辑:
该应用程序运行完美,没有遇到此循环导入问题。从 shell导入globals.py没有问题。甚至命令也可以在不调用manage.py的情况下从 shell 执行。
那么为什么manage.py some_command由于循环导入而失败呢?
提前致谢。