gpt4 book ai didi

django - django settings.py 中的相对路径

转载 作者:行者123 更新时间:2023-12-02 01:18:55 24 4
gpt4 key购买 nike

对于 setting.py 中的各种设置(MEDIA_ROOT、TEMPLATE_DIRS),它被指示提供绝对路径。我已经使用 mod_wsgi 配置了 apache。我在名为 apache 的文件夹中有一个 wsgi 脚本,它重定向到设置.py

import os
import sys

path = 'D:/Projects/Dan'

if path not in sys.path:
sys.path.append(path )

os.environ['DJANGO_SETTINGS_MODULE'] = 'Django.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

(不要误会 - Django 是我项目的名称。)

好的,我的问题是——既然我们已经在 wsgi 脚本中将我项目的路径导入到系统路径,那么我在 settings.py 中给出一个相对路径不是更可行吗,因为那会使部署更容易。如果我错了,请告诉我标准程序,以便我可以在一个文件中设置所有路径,而不是 3 个文件(Apache - httpd.conf,mod_wsgi - django.wsgi,django - settings.py ).

最佳答案

使用:

import os
this_directory = os.path.dirname(__file__)

然后:

absolute_directory = os.path.join(this_directory, 'relative.txt')

顺便说一句,考虑到 Django 包本身是“django”,将您的项目称为“Django”是不明智的。你不应该依赖差异,以免造成混淆。简而言之,Python 包/模块名称应该只是大小写不同。您的站点项目目录被视为 Python 包,因此是问题所在。

关于django - django settings.py 中的相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7606205/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com