无法弄清楚为什么未将django变量传递到模板中

时间:2018-06-22 16:26:16

标签: django jinja2

我已经为此工作了几个小时,终生无法将django应用程序中的变量添加到模板中。

html:

{% block content %}
        {{test}}
{% endblock content %}

观看次数:

def home(request):

    context = {'test' : "test"}

    return render(request, "/dbus/templates/index.html", context)

urls.py:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name = 'home')
]

(注意:我没有将导入内容提供给我提供的视图代码示例)

2 个答案:

答案 0 :(得分:0)

我认为您不需要在参数“ / dbus / templates / index.html”

中添加“模板”

如果 dbus 是您的django应用程序,而 templates是该django-app中的文件夹,则按照惯例,您必须添加一个名为的子文件夹dbus 放在此模板文件夹中。

与django-app'dbus'有关的所有HTML文件都应存储在名为'dbus'的子文件夹中(位于模板文件夹中)

index.html的路径应类似于: YourProjectFolder / dbus / templates / dbus / index.html

如果您对这部分内容了解不多,则必须渲染html页面,如“ dbus / index.html”

您不需要在render参数中添加该模板目录。

正确的行是:返回渲染(请求,“ dbus / index.html”,上下文)

这应该可以解决您的问题!

答案 1 :(得分:0)

发现问题出在Nginx或uWSGI中。我都重新启动,更改开始生效