Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django Wagtail模板变量是否为“;“自我”;存在于不';t子类页面?_Django_Django Models_Wagtail - Fatal编程技术网

Django Wagtail模板变量是否为“;“自我”;存在于不';t子类页面?

Django Wagtail模板变量是否为“;“自我”;存在于不';t子类页面?,django,django-models,wagtail,Django,Django Models,Wagtail,Wagtail新手在这里模板化一个响应,该响应是从基于Django的models.Model类派生的,我注意到它确实有{{page}模板变量可用,但没有{self} 只是想确认这是因为{{self}模板变量仅对扩展页面的类可用。在文档中找不到任何关于它的信息 提前感谢, John简短的回答是肯定的,self变量特定于页面。更准确的答案是,对于非页面模型,从模型“派生”响应的想法本身就是一种误解 普通的Django模型对模板或服务HTTP响应一无所知-这种行为特定于Wagtail页面模型。(更具体

Wagtail新手在这里模板化一个响应,该响应是从基于Django的
models.Model
类派生的,我注意到它确实有
{{page}
模板变量可用,但没有
{self}

只是想确认这是因为
{{self}
模板变量仅对扩展
页面的类可用。在文档中找不到任何关于它的信息

提前感谢,

John

简短的回答是肯定的,
self
变量特定于
页面
。更准确的答案是,对于非
页面
模型,从模型“派生”响应的想法本身就是一种误解

普通的Django模型对模板或服务HTTP响应一无所知-这种行为特定于Wagtail
页面
模型。(更具体地说,
Page
模型实现了一种方法
service(request)
,该方法呈现一个模板,该模板具有一组特定的可用变量,包括
Page
self

如果您遵循通常的Django约定,则可能有如下视图函数:

def show(request, object_id):
    my_page = SomeModel.objects.get(id=object_id)
    return render(request, 'some_template.html', {
        'page': my_page,
    })

这里,模板响应来自对
render
的调用,并且完全取决于您在该模板上提供哪些变量。在本例中,变量
{{page}
将在模板上可用,因为这是我们作为最后一个参数传递给
render
。这完全独立于在
SomeModel
中发生的任何事情-该模型对模板呈现过程没有影响。

对不起,是的,我知道传递到模板的内容就是传递到模板的内容。只是想验证
{{self}}
是否来自
页面
父类(而不是其他地方),如果它在非摇摆响应中“丢失”,我不会感到惊讶。感谢您的启发/阐述!