1

ブック アプリケーションを作成しました。各ブックには複数のセクションが含まれ、各セクションには複数のサブセクションが含まれています。

アプリは正常に動作し、各サブセクションはそのコンテンツを右側のページなどに「表示」します。問題は、各サブセクションに異なる html/css/js コードと効果を持たせたいということです。

URLS.PY コードの一部を次に示します。

 url(r'^admin/', include(admin.site.urls)),
 (r'^$', direct_to_template, {'template': 'index.html'}),
 (r'^book/$','book.views.BookAll'),
 (r'^book/$','book.views.BookAll'),

 (r'^book/(?P<slug>[-\w]+)/$','book.views.Ssection_specific'),
 (r'^book/info/(?P<slug>[-\w]+)/$','book.views.Ssection_details'),

)

一部の views.py コード:

def Ssection_specific(request, slug): #display according to specified section object.
    try:
            section = Section.objects.get(slug=slug)
    except Section.DoesNotExist:
            raise Http404        
    ssection = SSection.objects.filter(section = section).order_by('subject')
context = {'ssection' : ssection,'section' : section}
    return render_to_response('section_display.html', context, context_instance = RequestContext(request))# creates

def Ssection_details(request, slug):
    try:
            ssection = SSection.objects.get(slug = slug)
    except SSection.DoesNotExist:
            raise Http404
    context = {'ssection' : ssection}
    return render_to_response('info/ssection_disp.html', context, context_in)

ご覧のとおり、各サブセクションのページはスラッグによって決定されます。もちろん、それぞれが同じテンプレートを持ち、それが私の問題です。ページごとに異なる css/js エフェクトを作成したい。

4

1 に答える 1

2

base.html を作成する

base.html

<html>
   <head>
       <title>{% block title %}{% endblock %}</title>

       {% block css %}{% endblock %}
       {% block js %}{% endblock %}
   </head>

   <body>
        {% block content %}{% endblock %}
   </body>
</html>

page1.html

{% extends "base.html" %}

{% block title %}{{block.super}}"title here"{% endblock %}

{% block css %}{{block.super}}
     "css here"
{% endblock %}

{% block js %}{{block.super}}
     "js here"
{% endblock %}

{% block content %}
     content here
{% endblock %}

他のページでこのパターンに従うと、必要に応じて異なる css/js を使用できるようになります

于 2013-02-05T11:36:33.420 に答える