我正在实施James Bennett的优秀django-contact-form,但遇到了障碍。我的联系页面不仅包含表单,还包含其他平面页面信息。
如果不重写联系表单使用的现有视图,我希望能够包装或链接视图。这样我就可以通过上下文注入一些额外的信息,以便表单和平面页面数据都可以在同一个模板中呈现。
我听说它提到这是可能的,但我似乎无法弄清楚如何让它发挥作用。我创建了自己的包装器视图,称为联系表单视图,并尝试检查HttpResponse对象以查找我可以附加的属性,但我似乎无法弄清楚它是哪个,如果有的话。
编辑: James评论说,最新的代码可以在BitBucket上找到here。
答案 0 :(得分:2)
答案 1 :(得分:2)
extra_context
参数中传递平面页面(除此之外,正是为了这种用例)。 答案 2 :(得分:1)
上下文处理器就是您的想法。而render_to_response则无关紧要。所需的信息是视图是否使用RequestContext,因为这是激活上下文处理器的原因。
除此之外,没有办法“链接”视图以添加到上下文 - 您可以将一个视图包装在另一个视图中并更改进入它的数据,但是不能添加到上下文方式。