Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
(/login.html) Inscribirse
(/) (/search) (/submit.html)
(https://signup.steemit.com)
Intro: English
Title: How to send AJAX requests in Django
Language: Spanish / Español
En este tutorial vamos a ver como realizar una solicitud AJAX en Django ,
haciendo una solicitud POST a nuestra aplicación y corriendo una tarea
especí ca para posteriormente, enviar una respuesta al cliente, todo esto,
sin necesidad de recargar la página.
/
Para el caso práctico de este tutorial, crearemos un formulario típico de
contacto de una página web con los campos nombre, correo electrónico y
mensaje, y ejecutaremos la acción submit de este formulario mediante el
uso de AJAX. En el tutorial Cómo crear un formulario en Django
(https://steemit.com/utopian-io/@kit.andres/como-crear-un-formulario-
en-django-utilizando-la-libreria-django-widget-tweaks) estudiamos los
pasos para crear un formulario y manipular los datos ingresados por el
usuario, y en el tutorial cómo enviar correos electrónicos en Django
(https://steemit.com/utopian-io/@kit.andres/como-enviar-correos-
electronicos-en-django-implementacion-de-formulario-de-contacto)
creamos un mensaje de correo electrónico con estos datos y lo enviamos a
una dirección de correo electrónico predetermianda.
app/views.py
app/templates/home.html
app/templates/email_content.html
/
Actualmente, cuando un usuario hace submit del formulario, se crea una
solicitud post al servidor que recarga la página. Para evitar esto, lo primero
que debemos hacer es capturar la acción submit del formulario para
decidir nosotros mismos mediante el uso de JQuery que es lo que
queremos que suceda.
Código fuente
/
Agregamos un id a la etiqueta <form> ; en este caso voy a usar
id_contact_form, y escribimos el boque Javascript {% block js %} al nal
de este archivo.
app/templates/home.html
Código fuente
/
2. Definir la url a la que enviaremos la solicitud POST
Actualmente, la solicutud post se está enviando a la url localhost:8000, que
representa la página de inicio de nuestra aplicación y cuya vista se
encentra de nida en el archivo app/views.py de la siguiente forma:
app/views.py
/
Código fuente
/
app/urls.py
Código fuente
Agregaremos esta url como atributo data al tag <form> en nuestro archivo
app/templates/home.html. Llamaré este atrubuto data-post-url :
app/templates/home.html
/
Código fuente
app/templates/home.html
/
Código fuente
app/templates/home.html
/
Código fuente
app/views.py
/
Código fuente
app/views.py
/
Código fuente
/
Código fuente
/
Y esto es todo!!! De esta forma se envía una solicitud POST usando AJAX en
Django. Con este se termina una serie de tutoriales (crear un formulario
en Django (https://steemit.com/utopian-io/@kit.andres/como-crear-un-
formulario-en-django-utilizando-la-libreria-django-widget-tweaks), envío
de correos electrónicos en Django (https://steemit.com/utopian-
io/@kit.andres/como-enviar-correos-electronicos-en-django-
implementacion-de-formulario-de-contacto) y este) que desarrollados uno
tras otro nos permiten crear un formulario y hacer submit de este
mediante el uso de AJAX, enviando una solicitud asíncorina al servidor y
retornando a nuestros usuarios una respuesta sin necesidad de que la
página sea recargada. Seguiré compartiendo mis experiencias con Django,
fantástico framework web escrito en Python.
/
Felices días ✌
django)
/
isfar (63) (/@isfar) hace 2 años (/utopian-io/@isfar/re-kitandres-como-enviar-solicitudes-ajax-en- [-]
django-20180111t105322193z#@isfar/re-kitandres-como-enviar-solicitudes-ajax-en-django-
20180111t105322193z)
Thank you for the contribution. It has been approved.
Achievements
You have less than 500 followers. Just gave you a gi to help you succeed!
Seems like you contribute quite o en. AMAZING!
Suggestions
Contribute more o en to get higher and higher rewards. I wish to see you o en!
Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly
based on that. Good luck!
Get Noticed!
Did you know project owners can manually vote with their own voting power or by voting power delegated
to their projects? Ask the project owner to review your contributions!
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord . Lets GROW TOGETHER!
/
(https://steemit.com/~witnesses)
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat?
Join me on Discord https://discord.gg/Pc8HG9x
$0.04 1 voto Respuesta