鹡鸰视图:额外的上下文
Wagtail Views: extra context
我没有找到更新 Wagtail CMS 页面上下文的正确方法。
比如我有我的主页模型:
class HomePage(Page):
about = RichTextField(blank=True)
date = models.DateField(auto_now=True)
content_panels = Page.content_panels + [
FieldPanel('about', classname="full")
]
class Meta:
verbose_name = "Homepage"
我还希望该页面上包含一些第三方信息。就我而言,它的论坛。写一些 ViewMixin 会很棒,比如:
class ForumMixin(object):
pass
# add latest forums to context
我可以通过编写我的 Django CBV 来做到这一点,但我真的很想知道 Wagtail Native Way。
谢谢!
您可以通过重写页面模型上的 get_context
方法来执行此操作:
class HomePage(Page):
def get_context(self, request):
context = super(HomePage, self).get_context(request)
context['forums'] = Forum.objects.all()
return context
这使得变量 forums
在您的模板上可用。
我没有找到更新 Wagtail CMS 页面上下文的正确方法。
比如我有我的主页模型:
class HomePage(Page):
about = RichTextField(blank=True)
date = models.DateField(auto_now=True)
content_panels = Page.content_panels + [
FieldPanel('about', classname="full")
]
class Meta:
verbose_name = "Homepage"
我还希望该页面上包含一些第三方信息。就我而言,它的论坛。写一些 ViewMixin 会很棒,比如:
class ForumMixin(object):
pass
# add latest forums to context
我可以通过编写我的 Django CBV 来做到这一点,但我真的很想知道 Wagtail Native Way。 谢谢!
您可以通过重写页面模型上的 get_context
方法来执行此操作:
class HomePage(Page):
def get_context(self, request):
context = super(HomePage, self).get_context(request)
context['forums'] = Forum.objects.all()
return context
这使得变量 forums
在您的模板上可用。