gpt4 book ai didi

django - TemplateDoesNotExist - 文件存在,没有权限问题

转载 作者:行者123 更新时间:2023-12-02 17:53:25 32 4
gpt4 key购买 nike

我在尝试在 django 中渲染模板时收到此错误:

模板不存在<​​/strong>

...
Template-loader postmortem

Django tried loading these templates, in this order:
Using loader django.template.loaders.filesystem.Loader:
Using loader django.template.loaders.app_directories.Loader:

这是我的 settings.py 条目:

SETTINGS_PATH = os.path.normpath(os.path.dirname(__file__))
TEMPLATE_DIRS = (
os.path.join(SETTINGS_PATH, 'template'),
)

这是我的观点:

def handler(request):
if request.method == 'GET':
NewAppFormSet = modelformset_factory(Application)

return render_to_response(request, "template/apps.html",{"new_app_form":NewAppFormSet})

我已经尝试了所有可能的路径组合、调整权限等。真正的问题似乎是模板加载器,因为它们无法识别 TEMPLATE_DIRS 中规定的任何路径。我已经硬编码了这个字符串,但无济于事。我还使用 sudo/作为 root 运行了 python manage.py runserver 。我迷茫了...

最佳答案

我遇到了一个非常相似的问题,这让我发疯。原来我用来学习Python/Django的书并没有明确规定必须在settings.py中设置templates目录。很困惑。我正在使用 Python 2.6 和 Django 1.3.1 - 也许以前的版本会自动找到模板目录。不管怎样,在费了一天的时间并在这个网站上阅读了很多内容之后,我发现我必须在 settings.py 中用以下内容替换默认的 TEMPLATE_DIRS 分配:

# Find templates in the same folder as settings.py.
SETTINGS_PATH = os.path.realpath(os.path.dirname(__file__))

TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(SETTINGS_PATH, 'templates'),
)

感谢 stackoverflow!!

关于django - TemplateDoesNotExist - 文件存在,没有权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4975842/

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