Los formularios son uno de los elementos básicos que toda página web ofrece. En esta nota aprenderemos como obtener los datos de un formulario HTML en una aplicación GAE en Python y Webapp2.
Ejemplo
#!/usr/bin/env python # -*- coding: utf-8 -*- import webapp2 class MainHandler(webapp2.RequestHandler): def get(self): self.response.write("<html><body>") # inicio de formulario self.response.write("<form method='POST'>") # campo de texto self.response.write("<label>Nombre:</label> " "<input name='nombre' placeholder='Nombre'> <br>") #campo tipo radio self.response.write("<label>Genero:</label>" "<br> <label><input type='radio' name='genero' value='M'> Masculino</label>" "<br> <label><input type='radio' name='genero' value='F'> Femenino</label>") # campo tipo select self.response.write("<br> <label>Año de nacimiento:</label> <br>" "<select name='nacimiento'>" "<option value='1993'>1993</option>" "<option value='1994'>1994</option>" "<option value='1995'>1995</option>" "<option value='1996'>1996</option>" "<option value='1997'>1997</option>" "</select>") # botón de envio self.response.write("<br> <input type='submit'>") # final de formulario self.response.write("</form>") self.response.write("</body></html>") def post(self): self.response.write("<html><body>") self.response.write('<h1>Formulario recibido correctamente</h1>') self.response.write("Nombre: %s <br>" % self.request.get('nombre')) self.response.write("Genero: %s <br>" % self.request.get('genero')) self.response.write("Anio de nacimiento: %s <br>" % self.request.get('nacimiento')) self.response.write("<a href='/'><< Regresar</a>") self.response.write("</body></html>") app = webapp2.WSGIApplication([ ('/', MainHandler) ], debug=True)
Este ejemplo consta de un formulario simple que se sirve en la url “/” que solicita datos mediante controles de texto, radio y select.
que son enviados con post a la misma url “/” pero ahora con el método “post” y se muestran de la siguiente forma:
Vemos que para obtener los parámetros enviados en la petición HTTP se usa
self.request.get('nombreParametro')
No importa si los parámetros vienen en la url o en el cuerpo de la petición (POST), el mismo método sirve para todos los casos.
<< AnteriorApi de usuarios de Google en App Engine
Tutorial de Google App Engine
hola como estas graias por ños tutoriales
tengo un problema en el ejemplo de los formularios veo que te funciona pero ami no el post no me funciona en el methodo get si pero post no serias tan amable de explicarme o actualizar el tutorial para ver cual es mi error
Hola Krizz, ¿qué es lo que pasa exactamente cuando intentas hacer la petición POST?