我有一个 Django 网络应用程序,其目录/文件结构如下:
matrix/
matrix/
settings.py
__init__.py
view/
get_matrix.py
__init__.py
settings.py
__init__.py
settings.py
(顶层目录中的那个)是一个带有属性的简单单行:
SOME_PROPERTY="FOO"
最后是get_matrix.py
:
import settings
def foo_bar_op():
print settings.PROPERTY
if __name__ == "__main__":
foo_bar_op()
问题
当我运行网络应用程序时,它运行良好并且没有问题。但是,当我自己运行时python get_matrix.py
,出现此错误:
ImportError: No module named settings
我查看sys.path
了 web 应用程序运行的时间,它包含顶级目录作为第一个条目。这将解释它是如何发现的settings.py
。
为什么找不到主模块settings.py
?有两个名为 的目录是否令人困惑matrix
?