0

私はレンダリングすることができhome.html 、それが印刷Mary had a little lambされますsitetitle

ここにコードがありますhome.html

<head>
</head>
<body>
<h1>{{sitetitle}}</h1>
<h1>{% block fun %} {% endblock %}</h1>
</body> 

しかし、同じディレクトリにありますが、funブロックをレンダリングしていません。title.html

ここにコードがありますtitle.html

{% extends "home.html" %}
{% block fun %}
{{ link }}
{% endblock %}

views.py from django.shortcuts import render from models import siteprop from django.template import loaderのコードは次のとおりです。

def testf(request) :
 obj=siteprop.objects.first()
 context=obj.__dict__
 if '_state' in context: 
 del context['_state']
 print context
 return render(request,"home.html",context)

ここにコードがありますurls.py

from django.conf.urls import include, url
from django.contrib import admin
from thingslab import views
urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^test/',views.testf,),
]
4

1 に答える 1

3

ビューでレンダリングしているため、funブロックtitle.htmlはレンダリングされていませんhome.html

Django は、ブロックも含まれているという理由だけで、 のコードをtitle.html含める必要があることを自動的に認識しません。home.htmlfun

title.html代わりにレンダリングする必要がありますhome.html:

 return render(request, "title.html", context)
于 2015-08-20T05:53:12.213 に答える