1

我是 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 目录?我希望我必须更改一些设置?这些是什么?

4

3 回答 3

0

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

于 2019-02-21T17:13:38.327 回答
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/

.

于 2019-02-21T17:25:22.267 回答
0

您应该将myapp目录放在项目目录级别的名为templates的文件夹中(参见下图)。

Django项目目录结构

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

于 2019-02-21T18:36:52.187 回答