Reconocimiento de la URL al ejecutar la funcion.ajax en django

1,031 views
Skip to first unread message

luz

unread,
Dec 20, 2011, 11:17:28 AM12/20/11
to Django-es
Tengo un archivo html con un campo de texto y un boton. Cuando
oprima el boton deseo recuperar informacion de la base de datos..
Cuando se invoca la funcion .ajax, la URL que defino, que es el mismo
nombre
que aparece definido en views.py no es es contrada.

[20/Dec/2011 11:02:52] "POST /eliminarProducto HTTP/1.1" 404 2158

Como hago para desde el javascript se pueda encontrar la funcion
eliminarproducto definida en views.py ?

Muchas gracias por su ayuda..

Consultar_cuenta.html:
---------------------------------


<div id="idDivCriteriosBusqueda">

<label id="idLblPlaca">Criterio Placa</label>
<input id="idTxtPlaca" type="text" name="nameTxtPlaca" />
<input type="button" id="idBtnConsulta" name="nameBtnConsulta"
value="Consulta"/>
</div>

Cuenta.js:
-------------

$(document).ready(function(){
//código a ejecutar cuando el DOM está listo para recibir
instrucciones.

/** Funciones de Consulta **/
var fConsultaPlaca = function()
{
alert(" entro........... de consulta por placa ");
/* Definicion de variables para enviar a la funcion ajax
* seleccionarDatosSuscriptor

* */

var nombreProductoEliminar = $(this).attr("id");
$.ajax({
url:"eliminarProducto",
type: "POST",
data: ({"id_producto":nombreProductoEliminar}),
dataType: "json",
async: false,
success: function(json){
alert(json.mensaje)
},
error:function (xhr, ajaxOptions, thrownError){
alert(thrownError);
},
});

};


/** Fin consultas **/
/** Inscripcion de eventos **/
$("#idBtnConsulta").click(fConsultaPlaca);

/** Fin Inscripcion de eventos **/

}); //Fin la funcion ready


views,py:
------------


def eliminarProducto(request):
id_producto = request.POST["id_producto"] #@UnusedVariable
#ya k lo tienes ya haces tu delete
# si kieres le puedes enviar un diccionaro con un mensaje
try:
#pudo borraer
dicci = {"mensaje":"Todo correcto"}
except:
#no pudo borraer
dicci = {"mensaje":"mensaje de error"}
hresponse(json.dumps(dicci))


miguel miseck cumpa ascuña

unread,
Dec 20, 2011, 4:50:23 PM12/20/11
to djan...@googlegroups.com
$.ajax({
                   url:"/eliminarProducto/",

                   type: "POST",
                   data: ({"id_producto":
nombreProductoEliminar}),
                   dataType: "json",
                   async: false,
                   success: function(json){
                       alert(json.mensaje)
                   },
                   error:function (xhr, ajaxOptions, thrownError){
                       alert(thrownError);
                   },
               });

1. prueba eso
2. particularmente no pude hacer que me django me reonociera el POST pero usando GET me funciono quizas a ti tambien





--
Ha recibido este mensaje porque está suscrito a Grupo "Grupo de Usuarios del Framework Django de habla hispana" de Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a djan...@googlegroups.com
 Para anular la suscripción a este grupo, envíe un mensaje a django-es-...@googlegroups.com
 Para obtener más opciones, visita este grupo en http://groups.google.com.bo/group/django-es.



--
Miguel Angel "Miseck" Cumpa Ascuña

José Antonio Sánchez Reynaga

unread,
Dec 20, 2011, 4:40:19 PM12/20/11
to djan...@googlegroups.com
Para estos casos te recomiendo que uses dajaxice.


instalas la app, podrás desde javascript podrás llamar una funcion de tus views. 

Te recomiendo que veas los ejemplos en la pagina oficial, te puedo decir que es muy fácil de usar. Saludos ;)

--
Ha recibido este mensaje porque está suscrito a Grupo "Grupo de Usuarios del Framework Django de habla hispana" de Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a djan...@googlegroups.com
 Para anular la suscripción a este grupo, envíe un mensaje a django-es-...@googlegroups.com
 Para obtener más opciones, visita este grupo en http://groups.google.com.bo/group/django-es.



--
KISS - Keep It Sort and Simple

Antonio Samper

unread,
Dec 22, 2011, 1:12:04 PM12/22/11
to djan...@googlegroups.com
Hola Jose Antonio

Si se utiliza dajaxIce o dajax no hay que utilizar Jquery como tal ?

No se si me explique

Saludos

José Antonio Sánchez Reynaga

unread,
Dec 22, 2011, 1:22:27 PM12/22/11
to djan...@googlegroups.com
Creo entenderte

Dajaxice hace la comunicacion cliente-servidor, es puro javascript, nada de jquery: http://docs.dajaxproject.com/dajaxice/,
Dajaxice hace posible que ejecutes con javascript (de manera asíncrona) una función de python, es genial =).

Dajax trabaja conjuntamnte dajaxice para modificar cosas del dom desde python, este si utiliza cosas de jquery y otros frameworks: https://github.com/jorgebastida/django-dajax/wiki

Saludos

Antonio Samper

unread,
Dec 22, 2011, 3:01:33 PM12/22/11
to djan...@googlegroups.com
osea que puedo desde una plantilla html por medio de un boton ejecutar una funcion en django que me recupere registros de la bd ?,
tambien queria aprovechar por este hilo y me disculpas para hacerte otras preguntas.

-si utilizamos esta herramienta que pasa con Json ?

-haz utilizado jgrid ?

Saludos

José Antonio Sánchez Reynaga

unread,
Dec 22, 2011, 3:12:17 PM12/22/11
to djan...@googlegroups.com
> El resultado de tu funcion de python en django puede devolver un json, xml, texto u otro formato que quieras. mira el ejemplo: http://www.dajaxproject.com/dajaxice/.
> no he utilizado jgrid.

Saludos

José Antonio Sánchez Reynaga

unread,
Dec 22, 2011, 3:17:17 PM12/22/11
to djan...@googlegroups.com
Puedes probar el ejemplo que adjunto, ve el archivo ajax.py en la carpeta biblioteca y el template prueba_ajax.html

Saludos
web.tar.gz

Antonio Samper

unread,
Dec 22, 2011, 3:37:56 PM12/22/11
to djan...@googlegroups.com
Listo Jose Antonio. Gracias, tu colaboración es muy valiosa.

Antonio Samper

unread,
Dec 22, 2011, 6:55:58 PM12/22/11
to djan...@googlegroups.com
Jose Antonio, puedo hacerte preguntas por este hilo acerca del proyecto web ?

saludos

Antonio

José Antonio Sánchez Reynaga

unread,
Dec 22, 2011, 8:54:56 PM12/22/11
to djan...@googlegroups.com
Si claro, adelante =)

Antonio Samper

unread,
Dec 30, 2011, 5:43:28 PM12/30/11
to djan...@googlegroups.com
Hola Jose Antonio

He estado mirando el ejemplo que me enviastes "Web" (hasta ahora tengo tiempo de mirarlo) queria formularte unas preguntas, ya que tienes muchos conocimientos en la materia.

- Desde donde se llama la plantilla "login.html"
- (r'^%s/' % settings.DAJAXICE_MEDIA_PREFIX, include('dajaxice.urls')) para que utilizas esta url
- AUTH_PROFILE_MODULE="biblioteca.perfil" esta instruccion que indica
- { % load url from future %}
- Para aprender a utilizar DajaxIce debo aprender JavaScript y para Dajax Ajax ?, existe algun tutorial o manual de DajaxIce y Dajax ?
- Veo que tienes un formulario creado en login.html pero no usas el modulo forms.py

Bueno José disculpame por las molestias causadas, agradezco tu colaboración

Antonio.
Reply all
Reply to author
Forward
0 new messages