据摇尾源代码称,
class Page(AbstractPage, index.Indexed, ClusterableModel, metaclass=PageBase):
def get_context(self, request, *args, **kwargs):
context = {
PAGE_TEMPLATE_VAR: self,
'self': self,
'request': request,
}
if self.context_object_name:
context[self.context_object_name] = self
return context默认情况下,wagtail Page模型中的任何子类都可以在其HTML模板中使用self & request。
然而,在 官方医生中,为什么我们可以在 {% load wagtailcore_tags %}**?之后使用而不是 self.body ?我没有在任何源代码中看到这一点。**
发布于 2021-08-04 08:53:15
当使用标准的Django模板引擎时,page和self都是有效的。然而,self在Jinja2模板引擎中是一个保留词,因此文档鼓励page保持一致性(并且使开发人员将来更容易切换到Jinja2,如果他们愿意的话)。
为了记录在案,下面是引入可选变量名的PR:https://github.com/wagtail/wagtail/pull/1571
https://stackoverflow.com/questions/68645208
复制相似问题