Python django如果模板工作不正常
我有一个电台列表,我必须从“开始”开始显示电台。启动和停止包含站点ID。我试着这样做,但当我运行时,我得到的只是一张空白页。 showtrain.html:-Python django如果模板工作不正常,python,django,Python,Django,我有一个电台列表,我必须从“开始”开始显示电台。启动和停止包含站点ID。我试着这样做,但当我运行时,我得到的只是一张空白页。 showtrain.html:- <table> <tr> {% for st in st_list %} {% if st.station_id >= start %} <td> {{ st.station_id }} </td> {% endif %} {% endfor %}
<table>
<tr>
{% for st in st_list %}
{% if st.station_id >= start %}
<td> {{ st.station_id }} </td>
{% endif %}
{% endfor %}
</tr>
</table>
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
如RemcoGerlich所述,问题在于数据类型不匹配。表单返回的start值为字符串类型,station_id为整数。if无法比较它们,因此控件不输入if语句,因此无法打印任何内容您是否尝试打印
st_list
的元素,以确保正确返回数据?#rofls是,当我完全删除if模板时,将打印st_列表的所有条目。首先在视图中执行for
和if
逻辑,使用print语句进行调试,并使用print检查终端中的所有值。我们没有足够的信息回答您的问题。代码看起来很好,所以问题可能在您的数据中。。。我们没有您用于执行视图的数据,因此无法判断实际输出是否符合您的期望。另外:您可以发布实际生成的源代码,而不是说“它返回一个空页面”,即使没有呈现任何内容,也应该包含某些内容。Start是字符串,station_id是int。pass“Start”:int(Start)
。
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