如何在django模型中循环时获取下一个obj
这是代码:
{% for o in page_obj.object_list %} {{o.terminal_id}} {{o.time_stamp}} {{o.latitude|floatformat:"6"}} {{o.longitude|floatformat:"6"}} {{o.speed}} $("script").last().parent().parent() {{o.speed}} {{o.adress_reality}} {%endfor%}
我想在'o'
对象之后得到下一个对象。 如何从'o'
对象中获取下一个? 或者,如何获取python文件中的下一个对象,我可以在html中显示如下所示?
{{ o.next_obj }}
谢谢
如果你想访问forloop中的多个对象,(虽然这不是一个好的设计理念,但这完全是一个单独的讨论。)你不要在对象上循环,而是一个计数器并访问相应对象的计数器周围。
#In your view obj_count = range(page_obj.object_list.count()) {% for i in obj_count %} oi # Will access current object o.i+1 # Will access the next object {% endfor %}
你尝试使用get_next_by_FOO吗? https://docs.djangoproject.com/en/1.2/ref/models/instances/#django.db.models.Model.get_next_by_FOO
如果该字段不是动态生成的,您可以添加到模型中(天真地):
class MyObj(models.Model): lat = ... lon = ... def get_next_by_id(self): return self.objects.get(id=self.id+1)
并使用{{ o.get_next_by_id.lat }}
否则,它很适用于templatetags ,请参阅标记部分,但需要更多代码。 如果你为我提供了一个更详细的例子,我可以尝试给你一个通用的模板标签,这可能适用于你的情况。
祝好运。
- 如何处理AJAX中的预期错误(包括向用户公开)
- Ajax:将整数数组发布到Django
- 在django app中使用jquery fullcalendar
- 使用Ajax和多次提交的Django表单validation
- 使用django-dynamic-formset和来自django-extra-views的CreateWithInlinesView – 多个表单集
- 将动态Javascript变量传递给Django / Python
- jquery month picker:设置初始最小/最大范围与“from”<“to”function冲突
- $ ajax命令和Json响应
- 如何在Django admin中向第三方外部jQuery插件提供$