🧴 FLASK - REST API Simple con Python [ con SQLite y SQLAlchemy ]
Vložit
- čas přidán 25. 07. 2024
- ¿Quieres crear una API REST usando Flask y Python? ¡Pues entra para aquí que yo te enseño! En este vídeo del curso de Python crearemos una aplicación web para consultar estadísticas de streamers.
👉🏻 Usaremos el framework web flask de python para crear nuestro backend. Además, crearemos una base de datos de tipo SQL utilizando SQLite3, que rellenaremos usando datos de Streamers.
✋ ¡Alto! ¿Has llegado hasta aquí? Pues menudo Titán. Coméntame "Terodáctil" para que yo sepa que te has leído la descripción.
👉🏻 Para conectar flask a la base de datos utilizaremos el módulo SQLAlchemy, que nos permite trabajar con la base de datos en forma de Objetos de Python, lo cual resulta muy útil.
👉🏻 De momento, leeremos datos de la base de datos y los mandaremos al cliente en formato JSON. Más adelante veremos algunas aplicaciones de este proceso.
✋ ¿Qué aprenderás? A crear una API REST utilizando python y flask. A crear una base de datos con SQLite3, añadir datos y leerlos. A conectarte a la base de datos utilizando Python y SQLAlchemy.
🎬 TIMESTAMPS:
00:00 - Explicación del proyecto de Python Flask.
01:37 - Instalación de librerías y estructura de ficheros.
02:55 - Instalación de Flask y SQLAlchemy
04:40 - Creación de la tabla de Streamers con SQLite3
06:47 - Añadimos datos a la tabla.
10:36 - Creación de la app de Flask
15:45 - Creación de la primera ruta de Flask
19:21 - Creamos el Modelo de Streamer con SQLAlchemy
27:12 - Leer todas las filas de una tabla con SQLAlchemy
33:34 - Método _str_ de la clase Streamer
39:30 - Serialización de datos.
41:25 - Ruta para devolver un JSON con todos los Streamers (jsonify)
52:20 - Buscar Streamer por nombre
53:08 - Enviar variables por URL
55:30 - Filtrar por nombre.
01:01:25 - Filtrar por múltiples valores con SQLAlchemy - Věda a technologie
👉🏻 Segunda parte ya disponible: czcams.com/video/ziMTDdG0zOA/video.html
👉🏻 ¿Quieres aprender SQLite3? czcams.com/video/uB0928SOTEQ/video.html
👉🏻 La playlist del CURSO: czcams.com/play/PLVs9JdE6ZZh112EBnYa_wCxYpbVXEXrLF.html
👉🏻 Código: github.com/dimas-avila/streamersAPI
👉🏻 Comando para instalar librerías: pip install Flask Flask-SQLAlchemy
El error del min 31:05 era ["SQLALCHEMY_DATABASE_URI"] la URI del final la tenias puesta como URL. Muy buen video, grande
Yo tuve el mismo error pero en vez de salirme no such tables me esta saliendo no such columns, quede rapadísimo con esa parte y esta es la hora que no le he encontrado solución
Ciertooo muchísimas gracias
Para los que tiene problemas con el slash o le toma la ruta por alguna razón una solución es esta: import os
file_path = os.path.abspath(os.getcwd())+"\manga.db"
app.config["SQLALCHEMY_DATABASE_URI"] = 'sqlite:///'+file_path Gracias por el tutorial Dimas
Poco a poco pero no falto a tus clases, gracias por tus videos
Con paciencia, la clave es intentar ser constante!
Molt bon vídeo, molt útil!!!
Moltes gràcies Heleen 😊
Epico 🙌 no entiendo como no tenes 1 millon de seguidores aun.. Me hizo mucha gracia que te hayas olvidado las diapo, un crack total! Muchas gracias por compartir los conocimientos! 😊
Muchas gracias por tu comentario Jefe! 1 Millón? Dios te escuche jajajaja. De momento si llegamos a mil yo ya soy feliz 🙌
@@Dimasmas Bueno una meta a corta distancia, muchisima suerte!! Excelente todo el contenido!
PD: El error en el minuto 28:15 no fue la ruta, fue que donde pusimos URL va URI
["SQLALCHEMY_DATABASE_URI"]
Excelente video bro, muchas gracias por el contenido, me ha ayudado bastante. :)
Muchas gracias a ti por verlo!
:) bro, estoy cursando desarollo web , por no querer aprender php me avente a flask para el back y tu video me ayudo un monton !
Te entiendo en lo de no querer aprender php ajajaja, yo lo tuve que usar alguna vez para WordPress y no me convence mucho.
Me alegra que te haya ayudado! Esta semana habrá segunda parte, para recoger datos de formularios y algunas formas de filtrar datos sql más elaboradas.
Yeeeei Dimas! Ha quedado buenísimo el video, aunque ha faltado el café, yo personalmente, tengo un juguito Boing. Qué genial que ya empecemos a trabajar con API's jeje, yo hice un pequeño ejercicio con una API del clima pero lo borré porque quería hacerlo más bonito y terminé arruinándolo JAJAJA. Sigue así Dimas, a pesar de que parecemos pocos, somos fieles a tus contenidos. Y, oye, qué te ha pasado, de verdad se ve que estás muy estresado porque estos últimos videos se te ve el ánimo como si se lo hubiera tragado un Dementor jeje, espero que todo esté yendo bien! SALUDOSSS!!!
Buenas Fernando! Es verdad, en este vídeo me faltó café jajajaja. Creo que sé cual es la API que comentas, en algún momento trabajaremos con APIs de terceros, igual le podemos echar un ojo.
Me ha hecho mucha gracia lo del dementor jajaajaja, razón no te falta. Ahora que he empezado el máster y sigo trabajando, tengo que grabar los vídeos en los pocos ratos libres que tengo, y a veces no me queda mucha energía 😔. Os pido disculpas, intentaré estar más activo en los siguientes.
Y es verdad, poco a poco va surgiendo una pequeña comunidad, os estoy muy agradecido! A ver si en 2022 llegamos a ser 1000, sería genial!
gracias Terodáctil
De nada triceratops
Excelente contenido.
Tengo una consulta. Hace muy poquito estoy aprendiendo a usar SQLAlchemy, y he estado usando reflexion a partir del metodo MetaData(). Es posible hacer lo mismo de esta manera?
Saludos!
Bastante buenos tus tutorialles, necesito de los seguidores o del tutor saber si hace desarrollos privados para un emprendimiento que tiene como objetivo construir 5 apps en timpo record (tipo micro servicios)
Me puedes escribir a lokixin@gmail.com y explicarme con más detalles qué necesitas
Hola Dimas!
Al ejecutar el /api/streamers me salta este error sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) unable to open database file.
Estoy atascadísima con eso, sabes a qué se debe? He intentado hacer mil cosas para solucionarlo.
Merci!
Terodáctil
AJAJAJAJJAA GRANDEEE
Buenas, me podrías decir tu correo para ponerme en contacto contigo? He intentado hacer lo del vídeo pero no he conseguido que funione. Gracias de antemano
Estimado Dimas, intentado en el terminal me ligo con lo siguiente: "pip install flask-sqlalchemy"
con el anterior comando: "pip3 install Flask Flask-SQLAlchemmy", no se pudo.
gracias por tu atención amigo Dimas.
Entonces todo solucionado verdad? Me alegro!
me creo un archivo DB_PATH y no me crea el de streamers.db
Me parecia que El error del min 30:30 era porque no habias puesto db.create_all() en el main
Buen dia Dimas y seguidores de este canal, por favor alguien podria echarme una ayuda con los siguientes errores:
ERROR: Could not find a version that satisfies the requirement Flask-SQLAlchemmy (from versions: none)
ERROR: No matching distribution found for Flask-SQLAlchemmy
me salieron al ejecutar: "pip install Flask Flask-SQLAlchemmy"
ya actualice mi python: python.exe -m pip install --upgrade pip
llevo buen rato buscando pero no encuentro respuestas que me ayuden, de antemano mil gracias compañeros.
Hola miguel, estás usando Windows u otro sistema operativo? Puedes ejecutar los comandos:
py --version
pip --version
y decirme que versiones te aparecen? Este error puede venir de algún conflicto entre python 3.x y python 2.7
@@Dimasmas disculpa amigo Dimas, omití la versión de mi Windows:
"Win10 pro 64bits esp."
lo ejecuto en una maquina virtual (VBOX)
****************************************************
Resultado de las consultas:
py --version :
Python 3.10.2
pip --version:
pip 22.0.3 from C:\Users\migue\AppData\Local\Programs\Python\Python310\lib\site-packages\pip (python 3.10)
version IDE:
Versión: 1.64.2 (user setup)
Commit: f80445acd5a3dadef24aa209168452a3d97cc326
Fecha: 2022-02-09T22:02:28.252Z
Electrón: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Windows_NT x64 10.0.19044
@@Dimasmas amigo, hace como 1 mes "arme" una pc virtual de prueba-desarrollo(VBox) Win10 pro de 32 bits esp.
Instale el VSCode y todo bien con los paquetes no tenia conflictos, desgraciadamente le asigne solo 20Gb, cree otra con Win64 con 150Gb de disco virtual.
instale VSC y me encontraba repasando este video, puesto que ya había terminado de seguir casi todos, y me salto ese error :(
@@Dimasmas se le puede hacer un "Downgrade" al python? (...algún conflicto entre python 3.x y python 2.7)
@@SonidosYresistores Las versiones son correctas, no deberían ser la causa del problema. Si estás usando windows (aunque sea una máquina virtual), puedes probar los siguientes comandos,
py -m pip install Flask-SQLAlchemy
pip install Flask
Vamos a ver si es un problema general o solo con la librería de flask-sqlalchemy.
Estimado: la barra normal la conocemos como "slash" ("/") y la que usa Güindous en el path ("\") es "backslash", horrorosa herencia de D.O.S. Las palabrotas que me vi obligado a usar las he modificado un poco, por los niños.
El diavlo