2014-02-10 86 views
0

下面是我的目录结构的一部分。我将设置保存在一个单独的文件夹中,以便在生产和开发过程中保持不同。Django设置模块和相对路径

DjangoApp 
    templates/ 
    base.html 
    OtherApp/ 
    DjangoApp/ 
    manage.py 
    __init__.py 
    settings/ 
    __init__.py 
    base.py 
    local.py 
    test.py 
    production.py 

以下是我的base.py设置文件中的模板设置。

import os 
PROJECT_PATH = os.path.abspath(os.path.dirname(__file__)) 
TEMPLATE_DIRS = (
    os.path.join(PROJECT_PATH, 'templates'), 
) 

它搜索settings文件夹内的templates目录。如何解决这个问题?

+0

显示您的目录树。 – laike9m

回答

1

呼叫dirname三次:

import os 
dirname = os.path.dirname 
PROJECT_PATH = dirname(dirname(dirname(os.path.abspath(__file__)))) 
TEMPLATE_DIRS = (
    os.path.join(PROJECT_PATH, 'templates'), 
) 

  • dirname(...)../DjangoApp/DjangoApp/settings
  • dirname(dirname(...))../DjangoApp/DjangoApp
  • dirname(dirname(dirname(...)))../DjangoApp
+0

谢谢! :d – toothie