[英]Django : Call a view from a template
如何在我的布局(模板)中调用视图?
例如:我在网站的每个页面上都有一个表格。 我需要为每个页面生成CSRF令牌,但是我不想将生成代码放在每个视图上。
谢谢。
如果您的表单只是HTML,则只需有一个包含HTML的模板,然后将其包含在其他模板中(或将其包含在您的基本模板中)。 要生成CSRF令牌,只需在模板中使用{%csrf_token%},如https://docs.djangoproject.com/en/dev/ref/contrib/csrf/中所述
如果要生成Django表单的HTML,则可以添加上下文处理器-在https://docs.djangoproject.com/en/dev/ref/templates/api/#subclassing-context-requestcontext中进行了说明生成表单,然后该表单将可用于所有模板。
def form_processor(request):
form = Form()
return { 'form': form.as_p() }
模板:
<form>{% csrf_token %}{{ {{ form }}</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.