我有一个Django列表视图
class FirePageView(ListView):
model = MyModel
template_name = 'page.html'
context_object_name = 'my_list'
ordering = ['-timestamp']
因此,我可以渲染一个表刚刚好,一切都在那里工作。但是,我希望应用一种转换,例如在将时间戳发送到模板之前,将所有时间戳从UTC更改为EST。这样,模板以EST而不是UTC显示时间。如何编辑ListView传递到模板中的内容
Tags:
正如其他作者所说,您的特定用例(转换时间戳)最好通过模板标记来解决
如果仍要修改数据,请查看djangos
MultipleObjectMixin
中使用的djangosListView
:您可以挂接到
get_queryset()
方法并返回一个iterable,该iterable按照您希望的方式进行转换。使用这个钩子,您仍然可以使用泛型ListView
的所有优点谢谢大家的评论和回答。如果您对直接编辑查询集感兴趣,这本身可能很有用,请查看下面@Yves Hary的答案
对于我的用例,自定义模板标记(https://docs.djangoproject.com/en/3.1/howto/custom-template-tags/#writing-custom-template-filters)可以工作。如果您感兴趣,这是我的代码:
应用程序内/templatetags/timezone_conversion.py
然后在html页面中
相关问题 更多 >
编程相关推荐