2016-08-08 33 views
0

Hier ist mein Modell:bestimmten Tag einstellen bestimmte Nachricht in der django Vorlage drucken

class Sitting(models.Model): 
    sit_date = models.DateField(blank=False) 
    cut_off_date = models.DateField(null=True, blank=True) 
    ballot_date = models.DateField(null=True, blank=True) 
    sess_no = models.ForeignKey(Session, 
           on_delete=models.CASCADE) 
    genre = TreeForeignKey('Genre', null=True, blank=True, db_index=True) 

hier ist meine Ansicht:

def sitting_list(request): 
    sitting=Sitting.objects.select_related('genre') 

    return render(
     request, 
     'genre/sitting_list.html', 
     {'sittings':sitting, }, ) 

Hier ist meine Vorlage ist:

{% block content %} 
<table> 
    <tr> 
    <th>Sitting Day & Date</th> 
    <th>Ministry/Division</th> 
    <th>Ballot Date</th> 

    </tr> 
    {% for sitting in sittings %} 
    <tr> 
     <td> {{ sitting.sit_date|date:"l, d F, Y" }}</td> 

    {% for genre in sitting.genre.get_descendants %} 

      <td> {{ genre }},</td> 

     {% endfor %} 
     <td>(Ballot: {{ sitting.ballot_date}})</td> 
    </tr> 
     <tr> 
    </tr> 
    {% endfor %} 
</table> 
{% endblock %} 

Es ergab sich folgende Ausgabe:

enter image description here

Edit:

aber ich möchte folgende Ausgabe:

enter image description here

Sie können von meinem gewünschten Ausgang sehen, kommen Ministerium Namen nur dann, wenn keine Trennung vorhanden ist. Außerdem Nummerierung und letzter Punkt kommen auch nicht.

Ich hoffe, dass dies auch mit Ihrer Hilfe behoben werden kann.

Antwort

0

Sie müssen nur hinzufügen, eine if-Anweisung zu sehen, ob die weekday 2 (0-6 Mo.-So.)

<td> 
{% if sitting.sit_date.weekday == 2 %} 
     extra stuff 
{% endif %} 
{% for genre in sitting.genre.get_descendants %} 
     {{ genre }}, 
{% endfor %} 
</td> 

Hinweis: Auch die td bewegt, so dass Sie die Formatierung Stil erhalten Sie wollten.

+0

Es iteriert jedes Ministerium/Divisionen und gab stattdessen viele Zeilen Ausgabe einer Zeile, um das Ergebnis sehen: Die ersten 30 Minuten PMQ Ministerium A, ersten 30 Minuten für PMQ Division A, Die ersten 30 Minuten PMQ Abteilung B, ersten 30 Minuten für PMQ Abteilung C, ersten 30 Minuten für PMQ ... – ohid

+0

@ohid - Hoppla, aktualisiert. – Sayse

+0

ich auch gleiches Ergebnis durch Ihren ersten Beitrag zu modifizieren, wie: {% mit dow = sitting.sit_date.weekday%} {% if dow == 2%}

erste 30 Minuten für PMQ

{% endif%} {% für Genre in sitting.genre.get_descendants%} {{genre}}, { % endfor%} {% endwith%} – ohid