Compartir tecnología

[Notas de Flask] Un programa Flask completo

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Como se mencionó anteriormente, Flask es un marco de desarrollo web liviano. ¿Por qué se dice que es liviano? Porque se puede ejecutar con solo unas pocas líneas de código. Echemos un vistazo al marco de flask más simple.

Instalar matraz

Antes de ver el marco de Flask, primero debemos instalar el módulo de flask. Cualquiera que haya estudiado Python debe saber que la instalación del módulo de flask es realmente muy simple.

pip install flask
  • 1

Puede instalarlo. Una cosa a mencionar aquí es que si encuentra un error de descarga al instalar un módulo, se debe principalmente a que Python usa la dirección oficial del módulo de descarga de forma predeterminada, y esta dirección a veces es inestable cuando se accede a ella en China. Se recomienda utilizar la fuente de descarga de Tsinghua para descargar, que puede ser mucho más rápida y no provocará errores ni tiempos de espera.

https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

El método de uso también es muy simple. Hay dos métodos. El primero es agregar un.-iParámetros, seguidos de la URL, el módulo se descargará desde esta dirección, de la siguiente manera

pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

El método anterior solo se puede utilizar para descargas temporales y no puede cambiar permanentemente la fuente de descarga. Aquí hay otro método para cambiar la fuente de descarga predeterminada.

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

Después del cambio, puedes pasar.pip config listCompruebe si el cambio se realizó correctamente. Si el cambio se realizó correctamente, se mostrará de la siguiente manera.

(.venv) ❯❯ pip config list
global.index-url='https://pypi.tuna.tsinghua.edu.cn/simple'
  • 1
  • 2

Un programa Flask mínimo y completo

Una vez que Flask se haya instalado correctamente, podemos ver un ejemplo. Este es un programa de flask completo y se requiere una pequeña unidad para que flask se ejecute. Guardamos el siguiente código en un archivo py, como my_flask.py.

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return "Hello, World!"

if __name__ == '__main__':
    app.run(debug=True)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Como se muestra en el código anterior, solo 10 líneas de código pueden hacer que flask se ejecute, por lo que flask es un marco web liviano.Aunque el código anterior es breve, es completo y contiene todo lo necesario para ejecutar Flask. Las funciones de instancia de aplicación, enrutamiento y visualización constituyen el programa Flask más simple.

Aplicaciones

La instancia de la aplicación es en realidad el objeto de aplicación de Flask. El objeto mencionado aquí no es su novia, sino un núcleo de aplicación web que puede incluir procesamiento de solicitudes, distribución de rutas y llamadas a funciones de vista, es decir, esa oración.app = Flask(__name__)Si miramos el código fuente del ejemplo de Flask, podemos encontrar que contiene una gran cantidad de contenido, como ejecutar parámetros de inicio, reglas de enrutamiento, definiciones de cómo enviar y recibir solicitudes, etc., que no se discutirán. en detalle aquí.

enrutamiento

El enrutamiento se utiliza para manejar la correspondencia entre URL y funciones.Aquí tenemos que hablar sobre todo el principio de funcionamiento de la web para facilitar la comprensión. Primero, mire la imagen a continuación.
Insertar descripción de la imagen aquí
El navegador web inicia una solicitud, el servidor web recibe la solicitud y la envía a la aplicación Flask. Después de que la aplicación Flask recibe la URL solicitada, encuentra la función de procesamiento correspondiente. Así es como funciona todo el enrutamiento.
El programa correspondiente a lo anterior es esa función.

@app.route('/')
def index():
    return "Hello, World!"
  • 1
  • 2
  • 3

Si aprende Python con relativa profundidad, podrá conocer el código anterior.@app.route('/')es un decorador que se utiliza para registrar funciones de vista y el contenido entre paréntesis es la ruta que se utilizará.'/'Significa la ruta raíz, es decirhttp://127.0.0.1:5000;Si se cambia a‘/login/’Significa usar la ruta de inicio de sesión, es decirhttp://127.0.0.1:5000/login/; si se escribe como'/user/<name>'Se convierte en enrutamiento variable dinámico, es decir, el<name>Cambiará dinámicamente según el contenido transmitido, comohttp://127.0.0.1:5000/user/jay, el navegador debe adjuntar este arrendajo a la ruta.
Esto está simplificado en Flask para facilitar su uso. De hecho, la forma tradicional de definir rutas no utiliza decoradores. Dado que la forma tradicional ya no se usa comúnmente, no entraré en detalles aquí.
Hay otro punto que debe mencionarse aquí sobre el enrutamiento, es decir, el enrutamiento de variables dinámicas de Flask solo admite tipos de cadena, int, flotante y ruta, como los anteriores.<name> Se utiliza el tipo de cadena. Este tipo no necesita escribirse de forma predeterminada. Puede coincidir con cualquier secuencia de caracteres excepto barras (/).Para otros tipos, si necesita identificarlos, debe escribir el tipo, como'/path/<path:my_path>'

función de vista

La función de vista es la función que maneja las solicitudes entrantes, que es la función definida en el enrutamiento.

def index():
    return "Hello, World!"
  • 1
  • 2

La función anterior es la llamada función de vista. Se utiliza para procesar solicitudes entrantes y devolver respuestas.

respuesta

La respuesta de devolución se menciona anteriormente, pero ¿cuál es la respuesta? La respuesta es el valor devuelto en la función de vista, que puede ser una cadena o una forma compleja. También puede usar la función render_template() proporcionada por Flask para devolver un html. Al mismo tiempo, la respuesta también puede usar directamente. Función de redirección() para redirigir la ruta.

puesta en marcha

Las cinco partes internas del programa Flask se resumen arriba, pero todavía hay un punto de entrada menos para que Flask se ejecute, que son las dos últimas líneas de este código.

if __name__ == '__main__':
    app.run(debug=True)
  • 1
  • 2

primera filaif __name__ == '__main__':Cualquiera que haya estudiado Python sabe que este es el método de entrada de Python, es decir, el archivo o módulo actual se ejecuta directamente como el programa principal.
segunda lineaapp.run(debug=True)Es llamar al objeto Flask creado anteriormente y ejecutar la función run () para permitir que Flask se ejecute, y la depuración se pasa como parámetro a la función run () para que Flask sepa que se inició en modo de depuración. En modo, Flask. cargará automáticamente el recargador y el depurador.
Luego vamos a la línea de comando, ingresamos al directorio del archivo my_flask.py e ingresamos en la línea de comandopython my_flask.pyPuede iniciar el programa, como se muestra en la siguiente figura.
Insertar descripción de la imagen aquí
Abrimos el navegador y entramoshttp://127.0.0.1:5000Puedes ver ¡Hola, mundo!, como se muestra a continuación.
Insertar descripción de la imagen aquí

En este punto hemos terminado de explicar los conceptos que debe tener nuestro programa Flask completo. Por supuesto, estos son los contenidos más básicos. Si quieres desarrollar completamente una aplicación web basada en Flask, todavía hay mucho que aprender, como por ejemplo. Como plantillas y bases de datos, tecnología front-end, etc., el autor también escribe mientras aprende y también se basa en el método de aprendizaje de Feynman para recordarlo con mayor firmeza. Si hay alguna omisión o error en el proceso de escritura, por favor. Señálalo.