鉴于 nightmare of relative imports in Python ,我应该在哪里放一个简单的utils.py
具有多个应用程序的 Django 项目中的文件(可在 models.py
、 admin.py
、 views.py
所有应用程序目录的所有文件中访问)?
尽管 Django 是迄今为止最受欢迎的语言框架,但 2019 年似乎仍然没有一个好的答案。
考虑到 Python 2 将于 2020 年 1 月停产,还请提供 Python 3 的答案。
最佳答案
其实,this answer解决这个问题。
读到这里,我不清楚,因为我不确定 Django 是否可以从目录导入或获取另一个嵌套文件来这样做,但是如果您创建 common/utils.py
就会出现这种情况。根目录中的文件(与 manage.py
相同的目录),应用程序中的任何文件都能够在 manage.py
解析该导入的运行时。
您只需 import common.utils
和 utils.foo()
在应用程序目录文件中。
我仍然不知道 Django 是如何做到这一点的。
关于python - Django 项目中应用程序范围的 utils 文件的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58730090/