2015-12-18 27 views
5

Ben django dizininde çok yeni. İki veya çok düzeyli sözlük kullanarak bir şablon oluşturamıyorum.Below benim görünüm ve şablon kodum.django şablonlarını oluşturmuyor

view.py

İki farklı şablonlarla çalıştık
myList = { 
    'ParentABC': { 
     'ABC' : '#' 
     } 
    } 
return render_to_response('index.html', myList) 

den

kod ama hiçbir şanslar: Template1-

<ul class="collapsible collapsible-accordion"> 
     {% for eachCategory in myList %} 
     <li class="bold"><a class="collapsible-header waves-effect waves-teal">{{ eachCategory }}</a> 
       <div class="collapsible-body" style=""> 
       <ul> 
       {% for subCat in myList.eachCategory %} 
        <li><a href="#">{{ subCat }}</a></li> 
       {% endfor %} 
       </ul> 
       </div> 
     </li> 
     {% endfor %} 
     </ul> 

şablon 2-

<ul class="collapsible collapsible-accordion"> 
    {% for category,value in myList.items %} 
    <li class="bold"><a class="collapsible-header waves-effect waves-teal">{{ category }}</a> 
      <div class="collapsible-body" style=""> 
      <ul> 
      {% for subcategory,value1 in value.items %} 
       <li><a href="#">{{ subcategory }}</a></li> 
      {% endfor %} 
      </ul> 
      </div> 
    </li> 
    {% endfor %} 
    </ul> 

i render sonra her zaman html'nin altına düşüyorum:

<ul class="collapsible collapsible-accordion"> 

     </ul> 

Lütfen bana yardım edin.

+0

Ayarlarınızı gönderin. – qasimalbaqali

+0

numaralı ortam için py dosyası, defualt settings.py'dir. Sunucu statik dosyalarına settings.py dosyasına sadece aşağıdaki satırları ekledim. STATICFILES_DIRS = \t [ \t \t \t BASE_DIR + '/ myproject/static /' \t \t \t \t] Ben setting.py sorunumu nasıl etkileyeceğini emin değilim. – virus

cevap

1

Kullanımı gibi sadece {% for value in object.items %}

Something bir nesne üzerinde yineleme istiyorsanız

myList = { 
     'myList' : { 
    'ParentABC1': { 
    'ABC' : '#', 
    'DEF' : '#' 
    }, 
    'ParentABC2': { 
    'ABC' : '#', 
    'DEF' : '#' 
    }, 
     } 

    } 

<ul class="collapsible collapsible-accordion"> 
     {% for eachCategory, value in myList.items %} 
     <li class="bold"><a class="collapsible-header waves-effect waves-teal">{{ eachCategory }}</a> 
       <div class="collapsible-body" style=""> 
       <ul> 
       {% for subCat in value %} 
        <li><a href="#">{{ subCat }}</a></li> 
     {% endfor %} 
     </ul> 
       </div> 
     </li> 
     {% endfor %} 
</ul> 
1

Kullanım {% for key, value in object.iteritems %} Eğer anahtarlar ve değerler veya kod örneği aşağıdaki

<ul class="collapsible collapsible-accordion"> 
    {% for eachCategory, catValue in myList.iteritems %} 
    <li class="bold"><a class="collapsible-header waves-effect waves-teal">{{ eachCategory }}</a> 
      <div class="collapsible-body" style=""> 
      <ul> 
      {% for subCat in catValue.items %} 
       <li><a href="#">{{ subCat }}</a></li> 
      {% endfor %} 
      </ul> 
      </div> 
    </li> 
    {% endfor %} 
    </ul> 
+0

Django şablonları argümanları desteklemez, böylece '()' kullanımı şablonun başarısız olmasına neden olur. –

+0

Düzenleniyor ... – jmbarbier

+0

@all - sorry .. Sorularımda da aynı şablonları sağladım. Zaten sağladığınız neredeyse aynı şablonu kullanıyorum. Orada bazı hatalar alabilirsiniz. – virus