2016-05-31 4 views
1

내 자식 템플릿 (부모가 "base.html"인)에 {% extends "X.html" %}을 추가하면 상위 템플릿 만로드됩니다. 내가 가져 가면 자식 템플릿이로드됩니다. 나는 겉으로보기에는 똑같은 상속 구조를 가지고있는 다른 앱을 가지고있어, 그래서 난처하게된다. 그게 문제가되지 않습니다 그래서Django 1.9에서 작동하지 않습니다.

다음
<!DOCTYPE html> 
{% load staticfiles %} 
<html> 
    <head> 
    {% block js %} 
    <script src="{{ STATIC_URL }}js/jquery.1.12.4.min.js"></script> 
    <script src="{{ STATIC_URL }}js/p5.js" 
    {% endblock %} 
    <title>myapp</title> 
    </head> 
    <body> 
    <h1>Welcome to my app</h1> 
    </body> 
</html> 

, 나는 확실히 내 views.py에서 아이 템플릿을 호출하고

<!DOCTYPE html> 
{% extends "app/base.html" %} 
{% block js %} 
    <script src="{{ STATIC_URL }}js/grow.js"></script> 
{% endblock %} 
{% block content %} 
<body> 
    <div id="message" style="visibility: hidden;"></div> 
    <div id="tree"></div> 
    <a href="/register/">register</a> 
<form method="POST"> 
    {% csrf_token %} 
    <input type="text" id="txt" /> 
    <input type="submit" id="grow" value="grow" style="color: grey;"/> 
</form> 
</body> 
{% endblock %} 

을 "grow.html"입니다 : 여기에 "base.html은"

django.conf.urls에서

수입을 포함, URL django.contr에서 : 여기

def grow(request): 
    ... 
    return render(request, 'app/grow.html') 

내 프로젝트의 URL이 있습니다 응용 프로그램 가져 오기보기에서 IB 수입 관리자 는

urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^grow/', include('app.urls')), 
    url(r'^$', views.home, name="home"),  
    ] 

및 응용 프로그램의 URL : "

나는 URL로 이동
from django.conf.urls import url 
from app import views 

urlpatterns = [ 
    url(r'^$', views.grow, name='grow'), 

    ] 

는// I는"grow.html "을 참조하십시오 기대하고 성장하지만 난 볼 수 있어요 base.html "을 참조하십시오.

+1

base.html에'{% block content %} {% endblock %} '을 (를) 추가해야합니다. – trantu

답변

5

기본 템플릿에 content 블록이 없습니다. 그래서 이고, 블록을 고집 할 곳이 없습니다.

콘텐츠 블록을 추가하기 만하면됩니다.

</head> 
{% block content %} 
    <body> 
    <h1>Welcome to my app</h1> 
    </body> 
{% endblock content %} 
</html> 
관련 문제