2016-03-26 23 views
1

Ayrıştırılmış sonucumu django şablonunda göstermeye çalışıyorum ama şu anda sahip olduğum kod ve sonuç şudur ve başka bir şey düşünemiyorum.Bu forma numara listesini görüntüleme django

Sonraki satırda sonraki beş sonuca sahip olmak için uğraşıyorum.

Kodum

{% for number in numbers %} 
    {%if not number|divisibleby:"6" %} 
    <span>{{ number }}</span> 
    {% else %} 
    <div>{{ number }}</div> 
    <p></p> 
    {% endif %} 
{% endfor %} 

Geçerli sonuç

1 2 3 4 5 
6 
7 8 9 10 11 
12 
13 14 15 16 17 
18 
19 20 

Benim sonuç benzer görünmelidir beklenen

1 2 3 4 5 
6 7 8 9 10 
11 12 13 14 15 
16 17 18 19 20 

cevap

2

Bu, <div> öğesinden dolayı gerçekleşir. Eğer <span> ile değiştirin ve <p> değişmeden bırakırsanız tamam olacak:

{% for number in numbers %} 
    <span>{{ number }}</span> 
    {%if number|divisibleby:"6" %} 
    <p></p> 
    {% endif %} 
{% endfor %} 

Working fiddle of rendered html.

<div> 
{% for number in numbers %} 
    <span>{{ number }}</span> 
    {%if number|divisibleby:"6" %} 
    </div><div> 
    {% endif %} 
{% endfor %} 
</div> 
2

gerçekten burada django mi istiyorsunuz:

Alternatif olarak, bu oradan <p> elemanı sevmiyorum olarak ne yapardım nedir? CSS3 istediğini yapar hangi :nth-child sözde sınıfını sahiptir

<span>1</span>....<span>n</span> 

Eğer gerçekten denemek başka bir yol gerekiyorsa css

span {float:left} 
span:nth-child(5n):after {clear:left} 

Ama ön yükleme alanı kullanarak öğrendim

{%if number|divisibleby:"5" %} 
    <span>{{ number }}</span><p></p> 
    {% else %} 
    <span>{{ number }}</span> 
    {% endif %} 
{% endfor %} 
+0

bu tüm bu sabit yardım etti kod, bir "satır" sınıfında ve "col-sm" içinde olduğunda {% if number | divisibleby%} 'kısmına gerek olmadan – Tushortz

İlgili konular