2015-03-31 69 views
2

使用django 1.7,他們添加了對配置類的支持,而不是以前版本中的魔術字符串。AppConfig中的虛線名稱

我的項目有一個名爲apps的文件夾,它被添加到PYTHON_PATH

在添加簡單的AppConfig派生類後,我遇到了很多導入錯誤,我想排除一些愚蠢的錯誤。

假設這種結構:

project_root/ 
    my_project/ 
    apps/ 
     my_app/ 
     another_app/ 

難道是正確的有這個配置?:

# my_app/apps.py 
class MyAppConfig(AppConfig): 
    name = 'apps.my_app' 


# my_app/__init__.py 
default_app_config='apps.my_app.apps.MyAppConfig' 

# settings.py 
INSTALLED_APPS = (
    ... 
    'apps.myapp.apps.MyAppConfig' 
    ... 
) 

Curently項目失敗嘗試導入models(或tasks或任何其他模塊)發行時:

from apps.my_app.tasks import AwesomeTask 

ImportError: no module named my_app.tasks 
+0

你得到的錯誤是什麼?該代碼段可能是正確的。 – 2015-03-31 19:35:05

+0

更新了問題以包含錯誤。 – tutuca 2015-03-31 19:39:17

+1

如果你只包含'my_app.tasks'? http://stackoverflow.com/a/20866424/248065可能有關。 – 2015-03-31 19:44:58

回答

1

我解決了類似的問題b y重命名應用程序文件夾。它與Django內部系統有某種衝突。

我希望這可以幫助別人。