stringtranslate.com

Flask (marco web)

Flask es un micro framework web escrito en Python . Se clasifica como un micro framework porque no requiere herramientas o bibliotecas particulares. [2] No tiene una capa de abstracción de base de datos , validación de formularios ni ningún otro componente donde las bibliotecas de terceros preexistentes proporcionen funciones comunes. Sin embargo, Flask admite extensiones que pueden agregar características de la aplicación como si estuvieran implementadas en Flask mismo. Existen extensiones para mapeadores relacionales de objetos , validación de formularios, manejo de carga, varias tecnologías de autenticación abierta y varias herramientas comunes relacionadas con el framework. [3]

Las aplicaciones que utilizan el marco Flask incluyen Pinterest y LinkedIn . [4] [5]

Historia

Flask fue creado por Armin Ronacher de Pocoo, un grupo internacional de entusiastas de Python formado en 2004. [6] Según Ronacher, la idea fue originalmente una broma del Día de los Inocentes que fue lo suficientemente popular como para convertirse en una aplicación seria. [7] [8] [9] El nombre es un juego de palabras con el anterior framework Bottle. [7]

Cuando Ronacher y Georg Brandl crearon un sistema de tablón de anuncios escrito en Python en 2004, se desarrollaron los proyectos Pocoo Werkzeug y Jinja . [10]

En abril de 2016, el equipo de Pocoo se disolvió y el desarrollo de Flask y las bibliotecas relacionadas pasó al proyecto Pallets recién formado. [11] [12] Desde 2018, los datos y objetos relacionados con Flask se pueden renderizar con Bootstrap . [13]

Flask se ha vuelto popular entre los entusiastas de Python. A partir de octubre de 2020 , tiene la segunda mayor cantidad de estrellas en GitHub entre los marcos de desarrollo web de Python, solo ligeramente detrás de Django , [14] y fue votado como el marco web más popular en la encuesta de desarrolladores de Python durante los años entre 2018 y 2022 inclusive. [15] [ 16] [17] [18] [19]

Componentes

El microframework Flask es parte de los Proyectos Pallets (anteriormente Pocoo ), y se basa en varios otros de ellos, todos bajo una licencia BSD .

Herramienta

Werkzeug ( que en alemán significa "herramienta") es una biblioteca de utilidades para el lenguaje de programación Python para aplicaciones de interfaz de puerta de enlace de servidor web (WSGI). Werkzeug puede crear instancias de objetos para funciones de solicitud, respuesta y utilidad. Se puede utilizar como base para un marco de software personalizado y es compatible con Python 2.7 y 3.5 y versiones posteriores. [20] [21]

Jinja

Jinja, también de Ronacher, es un motor de plantillas para el lenguaje de programación Python. De manera similar al framework web Django, maneja plantillas en un entorno aislado .

Marcado seguro

MarkupSafe es una biblioteca de manejo de cadenas para el lenguaje de programación Python. El tipo MarkupSafe homónimo extiende el tipo de cadena Python y marca su contenido como "seguro"; la combinación de MarkupSafe con cadenas regulares permite escapar automáticamente las cadenas sin marcar, al tiempo que evita el doble escape de cadenas ya marcadas.

Es peligroso

ItsDangerous es una biblioteca de serialización de datos segura para el lenguaje de programación Python. Se utiliza para almacenar la sesión de una aplicación Flask en una cookie sin permitir que los usuarios manipulen el contenido de la sesión.

Características

Ejemplo

El siguiente código muestra una aplicación web simple que muestra " ¡Hola mundo !" cuando se visita:

desde  el matraz  importar  Flask app  =  Flask ( __name__ )@app . route ( "/" ) def  hola ()  ->  str :  return  "Hola mundo"si  __name__  ==  "__main__ " :  aplicación.ejecutar ( )

Véase también

Referencias

  1. ^ "Versión 3.0.3". 7 de abril de 2024. Consultado el 23 de abril de 2024 .
  2. ^ "Prólogo de Flask". Archivado desde el original el 17 de noviembre de 2017.
  3. ^ "Extensiones de matraz". Archivado desde el original el 17 de mayo de 2018.
  4. ^¿ Qué desafíos ha enfrentado Pinterest con Flask?
  5. ^ Rachel Sanders: Desarrollo de extensiones de Flask - PyCon 2014
  6. ^ "Equipo Pocoo". Archivado desde el original el 15 de marzo de 2018.
  7. ^ ab Ronacher, Armin. "Abriendo el frasco" (PDF) . Archivado desde el original (PDF) el 17 de diciembre de 2016. Consultado el 30 de septiembre de 2011 .
  8. ^ Ronacher, Armin (3 de abril de 2010). "Autoridad del 1 de abril". Pensamientos y escritos de Armin Ronacher . Archivado desde el original el 14 de mayo de 2018. Consultado el 25 de julio de 2015 .
  9. ^ "Denegado: el micro-marco web de Python de próxima generación (página del Día de los Inocentes)". Archivado desde el original el 4 de septiembre de 2011. Consultado el 30 de septiembre de 2011 .
  10. ^ "Historia". Equipo Pocoo. Archivado desde el original el 19 de noviembre de 2017. Consultado el 25 de marzo de 2015 .
  11. ^ Ronacher, Armin (1 de abril de 2016). "Hola usuarios de Pallets". The Pallets Projects . Consultado el 8 de mayo de 2021 .
  12. ^ "Pocoo". www.pocoo.org . Consultado el 8 de mayo de 2021 .
  13. ^ "Bootstrap-Flask". HolaFlask . Consultado el 6 de noviembre de 2022 .
  14. ^ "Bibliotecas de Python de estrellas de GitHub". Github . Consultado el 27 de enero de 2020 .
  15. ^ "Encuesta a desarrolladores de Python 2018". www.jetbrains.com. 1 de noviembre de 2018.
  16. ^ "Encuesta a desarrolladores de Python 2019". www.jetbrains.com. 2019.
  17. ^ "Encuesta a desarrolladores de Python 2020". www.jetbrains.com. 2020.
  18. ^ "Encuesta a desarrolladores de Python 2021". www.jetbrains.com. 2021.
  19. ^ "Resultados de la encuesta de desarrolladores de Python de 2022". www.jetbrains.com. 2022. Consultado el 17 de octubre de 2023 .
  20. ^ Ronacher, Armin. "Werkzeug The Python WSGI Utility Library". palletsprojects.com . Consultado el 27 de mayo de 2018 .
  21. ^ Ronacher, Armin. «Instalación, versión Python». palletsprojects.com . Archivado desde el original el 11 de mayo de 2021. Consultado el 20 de abril de 2020 .

Enlaces externos