Django引用HTML路径到另一个目录

时间:2019-02-21 17:05:52

标签: django

我是Django的新手。只是研究在我的应用程序中呈现HTML页面。我有一个名为myapp的应用程序目录。在该目录本身中,我创建了一个hello.html。这是一个简单的HTML文件。我的查看功能是

def hello(request):
   today = datetime.datetime.now().date()
   return render(request, "hello.html", {"today" : today})

运行页面时,出现以下错误。

django.template.loaders.app_directories.Loader: /home/user/anaconda3/lib/python3.7/site-packages/django/contrib/admin/templates/hello.html (Source does not exist)

我知道它是从错误的路径引用的。但是为什么将其设置为anaconda目录?我希望我必须更改一些设置吗?他们是什么?

3 个答案:

答案 0 :(得分:0)

您应该将html模板保留在这样的路径上:project_name / templates / app_name /

答案 1 :(得分:0)

编辑您的settings.py并设置模板文件夹目标 并将您的hello.html放在该文件夹中

# Template directory setting
TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), 'templates'),
)

参考: https://docs.djangoproject.com/en/2.1/topics/templates/

答案 2 :(得分:0)

您应将 myapp 目录放置在项目目录级别上名为 templates 的文件夹内(请参见下面的图片)。

Django project directory structure

这是默认的Django项目结构。您可以通过修改 settings.py

来更改默认目录路径