在django中加载模板的问题

时间:2016-01-09 20:18:35

标签: python django

请帮助我理解我做错了什么。我已经在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 *

我做错了什么?谢谢

1 个答案:

答案 0 :(得分:1)

首先,不要将BASE DIR与你的目录合并,你需要使用os python模块,就像BASE DIR路径一样。
老老实实地在这里http://www.djangobook.com/en/2.0/index.html,它会帮助你很多,理解基础知识