在设置中找不到“django”的配置。模板

Could not find config for 'django' in settings.TEMPLATES

提问人:crazy_bmw_sex 提问时间:7/20/2023 更新时间:7/20/2023 访问量:63

问:

我编写了一个脚本,将 JSON 文件作为输入,并尝试使用 Django 呈现一个非常基本的 HTML 模板。为了生成 HTML 文件,我必须访问生成文件的特定 url,在我的情况下是 localhost:8000/generate_html/。

我在虚拟环境中工作。

但是,当我尝试这样做时,我收到以下错误消息:

服务器错误

我的脚本是这样的:

# Required imports
import json
from django.conf import settings
from django.http import HttpResponse
from django.template import engines
from django.urls import path 

# Django settings configuration
settings.configure(
   DEBUG=True,
   SECRET_KEY='your_secret_key',
   ALLOWED_HOSTS=['localhost'],
   ROOT_URLCONF=__name__,
   TEMPLATES=[
       {
           'BACKEND': 'django.template.backends.django.DjangoTemplates',
           'DIRS': [],
           'APP_DIRS': True,
       },
   ],
)

# Django view function
def generate_html(request):
   # Read JSON file
   with open('input.json') as json_file:
       data = json.load(json_file)

   # Load template from file
   with open('template.html') as template_file:
       template_content = template_file.read()

   # Render the template with JSON data
   template = engines['django'].from_string(template_content)
   html = template.render(data)

   # Write the rendered HTML to a file
   with open('output.html', 'w') as html_file:
       html_file.write(html)

   return HttpResponse('HTML file generated successfully!')

# URL configuration
def index(request):
   return HttpResponse('Welcome to the Django script!')

urlpatterns = [
   path('', index),
   path('generate_html/', generate_html),
]

# Django application setup
from django.core.management import execute_from_command_line
if __name__ == "__main__":
   execute_from_command_line()

我的 JSON 文件如下所示:

在此处输入图像描述

这是我的模板文件:

在此处输入图像描述

我想我必须通过以某种方式将我的模板文件添加到它的模板文件中来使 django 将我的模板文件检测为模板。

有谁知道如何解决这个问题?

python django 模板 django-templates 设置

评论

0赞 Gin Fuyou 7/20/2023
不,我不认为这是问题所在。这更有可能是你运行代码的方式。我不明白你为什么在这里调用配置,你为什么要使用视图,最后什么是“应用程序设置”。一般来说,我不明白你用所有这些代码做什么,所需的工作流程是什么?
0赞 crazy_bmw_sex 7/23/2023
@GinFuyou我也没有真正:)我只是按照我在网上看到的一些教程,基本上我尝试打开一个json文件,将其内容加载到变量中,然后加载模板,将其渲染为带有先前存储的JSON数据的HTML文件。我运行这个程序的方式是打开 GitBASH 并执行“python <my script name>.py runserver”,这本来是将整个 django webapp 写入一个单一文件的原因,这就是为什么配置和应用程序设置都在同一个文件中。我是 django 的新手......和 Web 开发一般:)
0赞 Gin Fuyou 7/23/2023
对不起,我仍然没有遵循推理。您希望代码如何运行?Web 使用客户端-服务器模型,您启动服务器,然后它等待客户端请求。脚本不是这样工作的,真的没有意义。python <script>.py runserver

答: 暂无答案