问题描述
我创建了Wagtail多站点。在其中,我有一个BlogoverviewPage,其中列出了所有Blog项目。问题在于“主站点”还列出了其他站点的博客项目。我一直在尝试在get_context中使用不同的查询,但是没有任何运气。奇怪的是,它是一种方法,主站点列出了其他站点的博客项目,但没有列出其他方法。
这是我的代码:
def get_context(self,request):
context = super().get_context(request)
context['blogpages'] = self.get_children().live().order_by('-go_live_at')
return context
我也尝试过:
def get_context(self,request):
context = super().get_context(request)
site = self.get_site()
context['blogpages'] = BlogPage.objects.all().live().in_site(site).order_by('-go_live_at')
return context
我们非常感谢您的帮助!
解决方法
最后,看来我很亲近。这可以达到目的:
def get_context(self,request):
context = super().get_context(request)
site = Site.find_for_request(request)
context['blogpages'] = self.get_children().all().live().in_site(site).order_by('-go_live_at')
return context