请帮助我理解我做错了什么。我已经在django和文件settings.py
中启动了项目,我设置了一个变量:
TEMPLATES_DIR = BASE_DIR+'/templates/'
在我的项目中,我有一个模型test
,在其中view.py
文件中我添加了以下内容:
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader
from django.conf import settings
from .models import *
def index(request):
template = loader.get_template(settings.TEMPLATES_DIR+'index.html')
test_var = "atata"
context = {
'test_var': test_var,
}
return HttpResponse(template.render(context, request))
跑完后我得到了以下内容:
/ test /
上的TemplateDoesNotExist/var/my_site/templates/index.html
但是,如果我发誓,我会看到这个文件:
ls /var/my_site/templates/index.html
-rwxr-xr-x 1 root root 77 Jan 9 14:18 /var/my_site/templates/index.html *
我做错了什么?谢谢
答案 0 :(得分:1)
首先,不要将BASE DIR
与你的目录合并,你需要使用os
python模块,就像BASE DIR
路径一样。
老老实实地在这里http://www.djangobook.com/en/2.0/index.html,它会帮助你很多,理解基础知识