Hola buenos días, estoy en un proyecto donde se esta desarrollando en Python usando Django, y normalmente programo en PHP.
Mi duda esta al momento de capturar la data que escribo en un
textarea que tengo en un Popup, no hemos tenido problemas capturando de página en página pero el problema se presenta en el Popup. El error que me da es el siguiente:
MultiValueDictKeyError at /recaudos/guardarMotivo
Key 'campo_rechazo' not found in <QueryDict: {}>
Mi código es el siguiente:
urls.py
Código Python:
Ver original#!/usr/bin/env python
# -*- coding: utf-8 -*-
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^popupRechazar/?$', 'recaudos.views.popupRechazar'),
(r'^guardarMotivo/?$', 'recaudos.views.guardarRechazo'),
)
forms.py
Código Python:
Ver originalclass PopupRechazar(forms.Form):
title_motivo_rechazo = 'Describa el motivo del rechazo'
campo_rechazo = forms.CharField(widget=forms.Textarea(attrs={'cols':58,'rows':9}))
views.py
Código Python:
Ver original#@login_required
def guardarRechazo(request):
fecha = datetime.now()
print 'Estoy aqui en guardar rechazo'
if request.method == 'GET':
formulario = PopupRechazar(data = request.GET)
if formulario.is_valid():
motivo = str(request.GET['campo_rechazo'])
print "aqui se muestra el motivo..." + str(motivo)
# Aqui empezaria a guardar la data del campo.
return render_to_response('recaudos/mensaje.html', {'form': formulario, 'mensaje2': True,'username': request.user, 'title_page':'Verif. Recaudos'}, context_instance = RequestContext(request))
#motivo = str(request.GET['campo_rechazo'])
else:
print 'Ocurrio un error'
return render_to_response('recaudos/mensaje.html', {'form': formulario, 'mensaje2': True,'username': request.user, 'title_page':'Verif. Recaudos'}, context_instance = RequestContext(request))
popupRechazar.html Código HTML:
{% extends "base_formulario.html" %}
{% block head %}
<script type="text/javascript">
function guardar(name){
document.getElementById(name).href="{% url recaudos.views.guardarRechazo %}";
$('#items_recaudos2').click();
}
</script>
{% endblock head %}
<form id="forma" class="wufoo" method="get">
<table>
<tr>
<td align="center">
{{form.title_motivo_rechazo}}
</td>
<td align="center">
{{form.campo_rechazo}}
</td>
</tr>
</table>
<a name="guardar" id ="guardar" onclick="guardar(this.id)"> <input class="btTxt" type="button" value="Guardar" /> </a>
</form>
Espero sea útil el código, mi pregunta es ¿Cómo capturo esa info que escribo en el Textarea? Con eso resolvería todo =/
Gracias de antemano por sus respuestas