我是Django的新手,我正在创建一个简单的博客web应用程序。我想使用get\u queryset方法获取另一个用户的博客帖子(不是经过身份验证的用户)。我尝试了下面的脚本,但它在模板上显示了一个空列表。我可以使用get_queryset显示所有博客帖子,但我主要关心的是显示特定用户的所有博客帖子(不是经过身份验证的用户)
View.py
class OtherUserProfileView(LoginRequiredMixin, ListView):
model = Post
template_name = "core/otheruser.html"
def get_queryset(self):
queryset = super(OtherUserProfileView, self).get_queryset()
queryset = queryset.filter(pk=self.user.id)
return queryset
Model.py
class Post(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
title = models.CharField(max_length=250)
content = models.TextField()
created = models.DateTimeField(auto_now_add=True)
publish = models.BooleanField(blank=True, default=False)
def __str__(self):
return self.title
您可以在url模式中传递要筛选查询集的用户id
在您的视图中,您可以通过
self.kwargs['user_id']
从路径访问user_id
,并使用它来过滤查询集相关问题 更多 >
编程相关推荐