Guías y tutoriales

Cientos de tutoriales y guías paso a paso cuidadosamente escritas por nuestro equipo de soporte.

Cómo crear una aplicación web usando Flask en Python 3

Flask es un framework web ligero y flexible para Python que permite construir aplicaciones web de manera rápida y sencilla. Se enfoca en la simplicidad y la modularidad, lo que lo hace fácil de aprender y utilizar para proyectos pequeños y grandes. No requiere de herramientas o bibliotecas adicionales, lo que significa que puedes comenzar a construir tu aplicación web con solo unas pocas líneas de código.

A continuación te proporcionamos un manual detallado para crear una aplicación web usando Flask en Python 3:

1. Preparación del entorno de desarrollo

Antes de comenzar a escribir código para la aplicación web, es importante tener un entorno de desarrollo adecuado. Asegúrate de tener Python 3.x y pip (el administrador de paquetes de Python) instalados en tu sistema. Luego, sigue los siguientes pasos:

  1. Crea un nuevo directorio para la aplicación web en tu sistema.

  2. Abre una terminal o consola de comandos en el directorio recién creado.

  3. Crea un entorno virtual de Python utilizando el comando python3 -m venv venv en la terminal.

  4. Activa el entorno virtual con el comando source venv/bin/activate en sistemas UNIX o venv\Scripts\activate en sistemas Windows.

  5. Instala Flask con el comando pip install flask.

2. Creación de la aplicación web

Ahora que has preparado el entorno de desarrollo, puedes comenzar a escribir el código para la aplicación web. Sigue los siguientes pasos:

  1. Crea un archivo app.py en el directorio de la aplicación web.

  2. Importa Flask y crea una instancia de la aplicación web. Puedes hacerlo de la siguiente manera:

file app.py

from flask import Flask
app = Flask(__name__)
  1. Crea una ruta básica que muestre un mensaje de bienvenida. Puedes hacerlo de la siguiente manera:

file app.py

@app.route('/')
def index():
    return '¡Bienvenido a mi aplicación web!'
  1. Agrega una condición if __name__ == '__main__': al final del archivo para asegurarte de que la aplicación web solo se ejecute, si se ejecuta el archivo directamente y no si se importa a otro archivo. Puedes hacerlo de la siguiente manera:

file app.py

if __name__ == '__main__':
    app.run()
  1. Guarda el archivo y ciérralo.

3. Ejecución de la aplicación web

Para ejecutar la aplicación web, sigue los siguientes pasos:

  1. Abre una terminal o consola de comandos en el directorio de la aplicación web.

  2. Activa el entorno virtual con el comando source venv/bin/activate en sistemas UNIX o venv\Scripts\activate en sistemas Windows.

  3. Ejecuta la aplicación web con el comando python app.py.

  4. Abre un navegador web y visita http://localhost:5000/. Deberías ver el mensaje de bienvenida que agregaste anteriormente.

4. Agregar más funcionalidad a la aplicación web

Ahora que has creado una aplicación web básica, puedes comenzar a agregar más funcionalidad a ella. Puedes hacerlo agregando más rutas y funciones en el archivo app.py. Por ejemplo, puedes agregar una ruta para mostrar una página de contacto y una función que procese un formulario de contacto. Puedes hacerlo de la siguiente manera:

file app.py

@app.route('/contacto')
def contacto():
    return 'Página de contacto'

@app.route('/enviar', methods=['POST'])
def enviar():
    nombre = request.form['nombre']
    email = request.form['email']
    mensaje = request.form['mensaje']
    # Procesar el formulario y enviar el correo electrónico
    return 'Mensaje enviado correctamente'

En el ejemplo anterior, la ruta /contacto muestra una página de contacto y la ruta /enviar procesa un formulario enviado por el usuario utilizando el método HTTP POST.

Para procesar el formulario, se utiliza el objeto request que viene con Flask. La información enviada por el usuario se puede obtener del objeto request.form que es un diccionario que contiene los datos del formulario. En este ejemplo, se obtienen los valores de nombre, email y mensaje del formulario.

Luego, se procesa el formulario y se envía un mensaje de confirmación al usuario.

5. Uso de plantillas

Cuando se construyen aplicaciones web más complejas, puede ser útil utilizar plantillas para crear el contenido HTML de las páginas. Flask utiliza el motor de plantillas Jinja2 para hacer esto.

Para usar plantillas en tu aplicación web, sigue los siguientes pasos:

  1. Crea una carpeta templates en el directorio de la aplicación web.

  2. Crea un archivo de plantilla llamado base.html en la carpeta templates. Este archivo contendrá la estructura básica de todas las páginas de tu sitio web.

file base.html

<!doctype html>
<html>
<head>
    <title>{% block title %}{% endblock %}</title>
</head>
<body>
    {% block content %}
    {% endblock %}
</body>
</html>
  1. Crea un archivo de plantilla llamado contacto.html en la carpeta templates. Este archivo contendrá el contenido específico de la página de contacto.

file contacto.html

{% extends 'base.html' %}

{% block title %}Contacto{% endblock %}

{% block content %}

Contacto