我正在使用wagtail CMS、Django、Postgresql构建一个网页,在页面底部,我正在构建一个部分,在那里我将使用分页显示视频
我正在尝试使用all_posts = MultiBlogPage.objects.values("all_blogs_content_pages")
从Django模型检索数据
我得到的结果是
<PageQuerySet [{'all_blogs_content_pages':
[
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ee2d21d0>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ed8fa2e8>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35f617e6a0>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ed90aac8>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ed90af60>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ed90a978>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ed90ae48>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ee2b9320>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ee2b9630>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ee339f28>,
<wagtail.core.blocks.stream_block.StreamValue.StreamChild object at 0x7f35ee339470>
]}]>
有人能看看我下面的代码,让我知道如何从Django模型中获得精确的值吗
def get_context(self, request, *args, **kwargs):
context = super(MultiBlogPage, self).get_context(request, *args, **kwargs)
context['multiblog_page'] = self
// The name of the stream field panel is "all_blogs_content_pages"
all_posts = MultiBlogPage.objects.values("all_blogs_content_pages")
print("all_posts...",all_posts)
paginator = Paginator(all_posts, 3)
print("paginator", paginator)
page = request.GET.get("page")
try:
posts = paginator.page(page)
except PageNotAnInteger:
posts = paginator.page(1)
except EmptyPage:
posts = paginator.page(paginator.num_pages)
context["posts"] = posts
return context
Wagtail模型可以像标准django模型一样使用,因此似乎没有必要将模型转换为DICT列表
live()
,仅筛选已发布的版本,并且specific()
从models.py而不是从基页类获取实际模型template.html
相关问题 更多 >
编程相关推荐