所以我有一个自定义模板标签,这很简单。它采用视图名称,呈现它,并返回其内容。问题是,虽然对他们使用.as_view()
获取内容,但似乎没有正确设置上下文,因为django-sekizai
的{{1}} s未正确添加到主模板。
另一方面,如果我直接实例化视图并在其上调用addtoblock
,则上下文将更新,.render_to_response(context).render()
将块数据注入基本模板。但是,第二种方法无法正确呈现表单(sekizai
执行)。有没有办法做到这一点,而不会肮脏地调用它们?
.as_view()
答案 0 :(得分:0)
事实证明,继承的get()
函数忽略了任何预先存在的上下文并呈现它自己的(这是逻辑的,因为视图不希望在其他视图中呈现),因此不允许{{1 }} 更新它。直接调用sekizai
允许您提供上下文,因此它可以正常工作。覆盖.render_to_template()
方法以接受先前的上下文并注入自己的工作。