1.7 中子文件夹中的应用程序
Posted
技术标签:
【中文标题】1.7 中子文件夹中的应用程序【英文标题】:Applications in subfolder in 1.7 【发布时间】:2015-01-11 18:37:46 【问题描述】:我有一个这样的项目文件夹结构:
project
applications
__init__.py
app1
app2
app3
project
__init__.py
settings.py
在我的 settings.py 中,我尝试像这样导入应用程序:
INSTALLED_APPS = (
'django.contrib.admin',
...
'applications.app1',
'applications.app2',
'applications.app3',
)
但如果我尝试迁移其中一个应用程序,我会收到此错误:
./manage.py makemigrations applications.app1
App 'applications.app1' could not be found. Is it in INSTALLED_APPS?
可能出了什么问题?这种设置用于 django 1.6
【问题讨论】:
【参考方案1】:实际上有一个 Django-native 解决方案。来自docs:
许多命令采用“应用名称”列表。 “应用程序名称”是包含模型的包的基本名称。例如,如果您的 INSTALLED_APPS 包含字符串“mysite.blog”,则应用名称为 blog。
【讨论】:
【参考方案2】:您的PYTHONPATH
上有应用程序文件夹吗?
您可以将其添加到设置文件中,方法是将其放在 BASE_DIR
下方:
import sys
sys.path.append(os.path.abspath("applications"))
【讨论】:
以上是关于1.7 中子文件夹中的应用程序的主要内容,如果未能解决你的问题,请参考以下文章