我正在使用Django 2.06开发一个项目。我有多个用户,他们可以发帖,其他人可以阅读他们的帖子,这很正常。在用户个人资料页面,用户应该看到自己的帖子。 这就是我遇到的问题,如何编码查询集,然后在个人资料部分,用户只能看到他们自己的帖子。
代码演示
class ProfileView(ListView):
template_name = "profile.html"
queryset = QuickWord.objects.filter()
context_object_name = 'quickword'
def get_context_data(self, **Kwargs):
context = super(ProfileView, self).get_context_data(**Kwargs)
context['addproduct'] = AddProduct.objects.filter()
context['article_view'] = Article.objects.filter()
context['edit'] = Profile.objects.all().last()
return context
我知道我必须使用过滤器值,但不知道该怎么做。
谢谢
答案 0 :(得分:0)
假设您的author
模型中有一个Post
字段,则应在views.py
中做类似的事情
def profile(request):
user_posts = Post.objects.filter(author=request.user)
return render(request, 'path/to/profile.html', {'posts': user_posts})
当然,以上视图要求用户登录。