Ich habe eine Liste von Stationen und ich muss Stationen von "Start" anzeigen. Start und Stopp enthalten Stations-IDs. Ich versuche auf diese Weise, aber wenn ich alles renne, bekomme ich eine leere Seite. showtrain.html: -django-wenn Vorlage nicht richtig funktioniert
<table>
<tr>
{% for st in st_list %}
{% if st.station_id >= start %}
<td> {{ st.station_id }} </td>
{% endif %}
{% endfor %}
</tr>
</table>
nichts funktioniert innerhalb wenn außer Bedingungen wie {% if Start%}. Ich weiß, dass mir etwas Triviales fehlt. Bitte hilf mir, es herauszufinden. Ich benutze Django 1.6. edit: views.py-
def runtrain(request):
if request.method == 'POST':
#request.post.get method retrieves user input from a form
start = request.POST.get('start', None)
stop = request.POST.get('stop', None)
rid = request.session.get('route_id')
stlist = SequenceTable.objects.filter(route_id = rid)
#print start
data2 = {
"start" : start,
"stop" : stop,
"st_list" : stlist,
}
return render(request,"showtrain.html",data2)
models.py-
class SequenceTable(models.Model):
id = models.AutoField(primary_key=True)
route_id = models.ForeignKey(route, on_delete=models.CASCADE)
station_id = models.ForeignKey(Stations, on_delete=models.CASCADE)
sequence_no = models.IntegerField(null=True)
#def __str__(self):
# return self.sequence_no
class Stations(models.Model):
station_id = models.AutoField(primary_key=True)
station = models.CharField(max_length=20)
station_code = models.CharField(max_length=10)
def __str__(self):
return self.station_code
Haben Sie versucht, die Elemente von 'st_list' zu drucken, um sicherzustellen, dass Sie die Daten korrekt zurückgeben? – rofls
#rofls ja, alle Einträge von st_list werden ausgedruckt, wenn ich die if-Vorlage komplett entferne – user37886
zuerst mache deine 'for' und' if' Logik in Sichten und debugge mit print-Anweisung und überprüfe alle Werte im Terminal mit print. –