【发布时间】:2019-12-21 17:09:28
【问题描述】:
我正在尝试在个人资料中显示所有帖子信息,并且我正在使用下面的此命令在模板中作为模板标签进行操作
{% for letter in user.letter_set.all %}
view.py 中的配置文件视图代码
class UserProfilePage(DetailView):
template_name = 'profile.html'
model = Profile
def get_object(self):
username = self.kwargs.get("username")
if username is None:
raise Http404
return get_object_or_404(User, username__iexact=username, is_active=True)
它正在工作,但我需要在顶部显示最新帖子。请告诉我我该怎么做。我想我必须对模板标签进行一些更改。 TIA
【问题讨论】:
-
那么你如何存储你的
Letter对象呢?你想通过一个特殊的领域来订购它们,比如posted_on吗?或者你只需要反向 id 排序? -
几个选项。查看 prefetch_related,您可以添加自定义查询集,以便对数据进行排序。或者您可以为您的 Letter 模型添加默认排序,请参阅 class meta。
标签: django python-3.x django-templates django-views