Python 通往django项目总监的路径
这是我的项目树:Python 通往django项目总监的路径,python,django,Python,Django,这是我的项目树: projectname projectname init.py settings.py urls.py wsgi.py appname init.py admin.py models.py test.py views.py urls.py templates base.html
projectname
projectname
init.py
settings.py
urls.py
wsgi.py
appname
init.py
admin.py
models.py
test.py
views.py
urls.py
templates
base.html
login.html
现在在settings.py中,我使用以下代码:
TEMPLATE_DIRS = (
os.path.join(os.path.dirname(BASE_DIR), "projectname", "templates"),
)
STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), "projectname", "static", "static-only")
MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), "projectname", "static", "media")
如何获取项目目录的路径,以便我不需要在代码中键入项目名称projectname
,并在任何其他django项目中使用该代码
更新
或者我可以用这个吗
BASE_DIR+'/templates'
BASE_DIR+'/static/media'
还是一个坏主意?我建议您使用: 基本目录已包含“项目名称”。当您执行
os.path.dirname(BASE\u DIR)
时,您将从projectname提升一个级别;只是把它加回去。不要那样做
相反,只需直接使用BASE_DIR:
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, "templates"),
)
您可以将这些行放在directories.py文件中,并将该逻辑导入settings.py,然后您可以重用settings.py并为不同的django项目更改directories.py。是的,我想我可以?但这是更多的工作D或者,我可以将其用作路径
BASE\u DIR+'/templates'
?
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, "templates"),
)