加载模板的表单模型时出现此错误,并在文本中将数字输入页面帮助 给出失败的原因: CSRF符号丢失或不正确。从Django,请帮助!禁止(403)CSRF验证失败。请求中止。 Django
views.py:
def ListAll(request, id_especialidad):
especialidad = Especialidad.objects.get(id=id_especialidad)
if request.method == 'GET':
user = request.user
if user.is_superuser:
pedido = Pedido.objects.filter(especialidad=especialidad)
template = 'admindata.html'
return render_to_response(template,locals())
else:
if request.method == 'POST':
form = PedidoEditForm(instance=especialidad)
else:
form = PedidoEditForm(request.POST, instance=especialidad)
if form.is_valid():
form.save()
pedido = Pedido.objects.filter(especialidad=especialidad)
return render_to_response('index2.html',locals(), {'form':form})
模板HTML:
{% if especialidad.estadistica == "0" %}
<section id="contenido">
<div class="container" style="margin:50px auto width="100%"">
<form id="myform" method="POST">
{% csrf_token %}
{{form.as_p}}
<input type="submit" class= "btn btn-success" value="Guardar">
{% else %}
<table id="example" class="table table-border table-striped table-hover">
<thead>
<tr>
<td>Servicio</td>
<td>Cod experto</td>
<td>Nombre</td>
<td>Cantidad</td>
<td>Ingresar</td>
</tr>
</thead>
<tfoot>
<tr>
<td>Servicio</td>
<td>Cod experto</td>
<td>Nombre</td>
<td>Cantidad</td>
<td></td>
</tr>
</tfoot>
<tbody>
{% if pedido %}
{% for ped in pedido %}
<tr>
<td>{{ ped.especialidad.nombre }}</td>
<td>{{ ped.articulo.cod_experto }}</td>
<td>{{ ped.articulo.nombre }}</td>
<td>{{ ped.cantidad }}</td>
<td><a href="{% url "usuario:cant_ingresar" ped.id especialidad.id %}" method='GET' type="submit" class="btn btn-primary pull-right" value="editar" onclick="document.location.reload();"/>Ingresar</a></td>
</tr>
{% endfor %}
{% endif %}
</tbody>
</table>
</form>
</div>
</section>
</div>
{%ENDIF%}
模型形式:
from django import forms
from django.forms import ModelForm
from .models import Pedido, Especialidad
class PedidoEditForm(forms.ModelForm):
cantidad = forms.IntegerField(label='Cantidad:', widget=forms.TextInput(attrs={'size':'10'}))
class Meta:
model = Pedido
fields = [
'cantidad',
]
class EstadisticaForm(forms.ModelForm):
estadistica = forms.IntegerField(label='Estadistica Menusal:', widget=forms.TextInput(attrs={'placeholder':'Ingrese numero pacientes'}))
class Meta:
model = Especialidad
fields = [
'estadistica',
]
在此使用第二个: EstadisticaForm。 估计的问题是什么? 问候!
我是否缺少一些东西或你的'表格'实际上从来没有完全呈现? '{else if'especialidad.estadistica ==“0”%}'在'' – 4140tm
之前被调用是的先生,想法是如果统计量为0,它会将我发送到模型窗体,否则(否则)我列出表单中的表格。 –
[Forbidden(403)CSRF验证失败。请求中止。即使使用{%csrf \ _token%}](http://stackoverflow.com/questions/20895526/forbidden-403-csrf-verification-failed-request-aborted-even-using-the-csr) – Nrzonline