在Django 1.11和2.0中使用数据内容中的表单引导popover,但在Djano 2.1-3.1中不使用



我有下面的代码,它在django 1.11中正常工作,升级后在django2.0中工作,但由于某种原因,从2.1到3.1.4,它在更高版本的django中无法工作。

<button 
type="button" 
class="btn btn-sm btn-secondary" 
id="dodaj-poziv-za-clanove-tijela" 
data-container="body" 
data-toggle="popover" 
title="Da li želite da dodate članove tijela u sastanak ?"
data-content=
"<form method='POST' action='{% url 'poziv_clanovi_dodaj' poziv_id=poziv.id %}'>
<button type='submit' class='btn btn-success btn-sm clanovi float-right'>Dodaj</button>
{% csrf_token %}
</form>"
> Dodaj poziv za članove tijela</button>

在浏览器中,这个按钮对于工作的django版本1.11和2.0来说看起来很正常,但在那些没有切换的版本中,2.0以上的每个版本包括2.1、2.2和3.0、3.1>在它和提交后,我得到csrf令牌错误

我在这里找到了一个解决方案如何在引导popver 中使用Django{%csrf_token%}

奇怪的是,{%csrf_token%}在django 1.11和django 2.0中工作,但由于django 2.1,您必须使用<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}" >而是

现在我的工作popover看起来像:

<button 
type="button" 
class="btn btn-sm btn-secondary" 
id="dodaj-poziv-za-clanove-tijela" 
data-container="body" 
data-toggle="popover" 
title="Da li želite da dodate članove tijela u sastanak ?"
data-content=
"<form method='POST' action='{% url 'poziv_clanovi_dodaj' poziv_id=poziv.id %}'>
<button type='submit' class='btn btn-success btn-sm clanovi float-right'>Dodaj</button>
<input type='hidden' name='csrfmiddlewaretoken' value='{{ csrf_token }}' >
</form>
"
>Dodaj poziv za članove tijela</button>

相关内容

最新更新