FastAPI REST API CRUD

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ก.ย. 2024
  • En este ejemplo Práctico, aprenderemos a crear una REST API que haga las operaciones CRUD (Create, Read, Update, Delete) usando FastAPI, un framework de Python para la creación de aplicaciones web Backend.
    Código del Ejemplo:
    github.com/Faz...
    Videos Recomendados:
    Curso de Python ➜ • Curso Python para Prin...
    Conda (Anaconda Python) ➜ • Anaconda - Python Pack...
    PipEnv ➜ • Pipenv | Entornos virt...
    Flask & React ➜ • Python Flask, React Ho...
    👨‍💻 ¿Qué servicios utilizo?
    Kite ➞ bit.ly/3dPzXHe
    Tabnine ➞ bit.ly/3wrmtKi
    SiteGround ➞ bit.ly/31u9ZEk
    DigitalOcean ➞ m.do.co/c/8ef2...
    Expo ➞ bit.ly/2WpYKtx
    NordVPN ➞ bit.ly/2Te7p0J
    Cloudinary ➞ bit.ly/3ohNlJ7
    Namecheap ➞ namecheap.pxf.io/ErDe9
    Hostinger ➞ www.hostg.xyz/...
    🌐 Redes:
    Fazt Web ➞ www.faztweb.com/
    Facebook ➞ / fazttech
    Instagram ➞ / fazttech
    Twitter ➞ / fazttech
    Telegram ➞ t.me/fazttech
    Twitch ➞ / fazttech
    Slack ➞ bit.ly/3dPqCPT
    Discord ➞ / discord
    Blog ➞ blog.faztweb.com
    📩 Contacto:
    ➞ fazt@faztweb.com
    #python #fastapi #restapi
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 92

  • @Martin-vd6ux
    @Martin-vd6ux ปีที่แล้ว +15

    Para los que no les deja utilizar el método post.dict(), utilicen post.model_dump() ya que post.dict() quedó obsoleto. Gracias por el video Fazt!

  • @infosoft2800
    @infosoft2800 3 ปีที่แล้ว +15

    Si por x motivo tienen problemas con la terminal de vscode y en lugar de bash o cmd les aparece como powershell. Tienen que ir a "preferences" y "settings". En el buscador escriben "Terminal Integrated Default Profile Windows" y en la primera opción si ven que lo tienen como powershell, lo cambian por "Command Prompt". Cierran el proyecto y reinician vscode.
    Hago este aporte porque al seguir el tutorial, por alguna razón el powershell no me permite ejecutar conda.

  • @kevinniebla1364
    @kevinniebla1364 2 หลายเดือนก่อน +2

    Los que le salga problema del 422 aunque lo tenga exactamente igual, se debe a que ahora tienes que definir Optional como None, id: Optional[str] = None y published_at : Optional[datetime] = None

  • @ivanmiguelportuondo5580
    @ivanmiguelportuondo5580 2 ปีที่แล้ว +13

    Es increíble lo que he aprendido con tus vídeos , te sigo hace un par de años y no dejo de hacerlo pues mejoro como profesional con cada uno de ellos , gracias por este tutorial . La consulta es: ¿ como hace para aprender tantas tecnologías al mismo tiempo?

    • @eljapi9346
      @eljapi9346 2 ปีที่แล้ว +1

      yo pienso que depende de tu nivel de interés en la materia, mientras más involucrado esté en tu vida, mayor conocimiento tendrás

  • @tomasjesusescobarcueltan7448
    @tomasjesusescobarcueltan7448 3 ปีที่แล้ว +7

    Estaba esperando está maravillosa clase 👽

  • @devrik7096
    @devrik7096 3 ปีที่แล้ว +7

    Ah vueltoooo! Fazt ah vuelto

  • @diegosanabria695
    @diegosanabria695 5 หลายเดือนก่อน +1

    A quienes les sale un error usando Optional al momento de hacer el post coloquen "= None" al final de cada Optional, puede ser por la version de Python 🤔. Esto permite que se hagan posts normalmente

  • @zasory
    @zasory 6 หลายเดือนก่อน +1

    29:00 para los que tuvieron problemas en ese minuto finalmente di con la solucion , quizas en la version del profesor ermitira agregar el objeto (diccionario) como se lo permitia a el pero en versiones nuevas no y es que el esquema pide si o si datos y hay que especificar en case de que no, adjunto mi solución:
    from fastapi import FastAPI
    from pydantic import BaseModel #Modelo inicial, como van a lucir nuestros datos
    from typing import Text, Optional
    from datetime import datetime
    from fastapi import HTTPException, status
    from fastapi.encoders import jsonable_encoder
    from uuid import uuid4 as uuid
    app = FastAPI()
    posts = []
    # Post Model
    class Post(BaseModel):
    id: Optional[str] = None
    title: str
    author: str
    content: Text
    created_at: datetime = datetime.now()
    published_at: Optional[datetime] = None
    published: bool = False
    @app.get('/')
    def read_root():
    return { "welcome":"welcome to my REST API" }
    @app.get('/posts')
    def get_posts():
    return posts
    @app.post('/posts')
    def save_post(post : Post):
    post.id = str(uuid())
    post_dict = jsonable_encoder(post)
    posts.append(post_dict)
    return "recibido"

  • @lfmtube
    @lfmtube 2 ปีที่แล้ว +1

    Fantástico video desde el segundo cero hasta el fin, muchas gracias! Aprendí bastantes más cosas nuevas de las que me imaginaba. Nuevo suscriptor! 🖖

  • @gusober4673
    @gusober4673 3 ปีที่แล้ว +3

    50 min y ya comente !! son las 4:10 am 24/07/2021 argentina xd

    • @FaztCode
      @FaztCode  3 ปีที่แล้ว

      xD Gracias por el apoyo Gus. Exitos!

  • @leopoldoramirezmontes1856
    @leopoldoramirezmontes1856 2 ปีที่แล้ว +1

    Muchas gracias Fazt , por tu contenido. Siempre muy claro, directo y efectivo. 👍 En verdad gracias a tu contenido he aprendido muchas cosas y creo que puedo volver a tener futuro en la carrera de desarrollo de software 👍

  • @alejandroch1202
    @alejandroch1202 2 ปีที่แล้ว +1

    Excelente contenido broth, preciso y claro. Gracias por compartir tus conocimientos 😎

  • @hannsflip
    @hannsflip หลายเดือนก่อน

    Gracias por la explicacion!!!

  • @qwwrt8596
    @qwwrt8596 8 หลายเดือนก่อน

    Buen video man, mejor que muchos cursos pagos

  • @999999999omar
    @999999999omar 3 ปีที่แล้ว +2

    Excelente tutorial, espero la parte 2, saludos

  • @germanconil9475
    @germanconil9475 11 หลายเดือนก่อน

    Sin desperdicios !!! sos un crack!!!

  • @kikecastor
    @kikecastor 2 ปีที่แล้ว +1

    genial Fazt, muchas gracias!

  • @PonsianoDeLoor
    @PonsianoDeLoor ปีที่แล้ว

    muchas gracias Fazt un buen inicio con fastAPI

  • @luisalamo2658
    @luisalamo2658 2 ปีที่แล้ว

    Gracias por esto, es justo lo que estaba buscando para aprender python, excelente contenido...

  • @JosePron19
    @JosePron19 2 ปีที่แล้ว

    Muy buen video! tenia que aprender fatsAPI y tu tutorial me ha sido de gran ayuda!

  • @chidomen132
    @chidomen132 ปีที่แล้ว

    Muchas gracias, Fazt por tan excelente video! Me gustaría preguntarte qué podría usar para desplegar modelos de machine learning, por lo que mencionaste Heroku creo que no podría servirme, te agradecería mucho si pudieras recomendarme algo. Gracias nuevamente!

  • @glp7777
    @glp7777 2 ปีที่แล้ว

    Muy buen tutorial, felicitaciones, clarisimo todo

  • @VHSHORROR8
    @VHSHORROR8 ปีที่แล้ว +1

    Hola video terminado-....heroku ya quito el metodo gratis o bueno de mi parte no lo encontre lo subire a github.. Gracias

  • @felipeavila8722
    @felipeavila8722 2 ปีที่แล้ว

    Otro nivel estos tutoriales!

  • @gilbertonava2373
    @gilbertonava2373 3 ปีที่แล้ว +2

    Fazt usando Fast

  • @nicoux9581
    @nicoux9581 ปีที่แล้ว

    Muy bueno! Muchas gracias por compartir

  • @javierrivasseau8956
    @javierrivasseau8956 3 หลายเดือนก่อน

    Hola Fazt como estas? Crees que es mejor Fast API + React + MongoDB que la tech MERN?

  • @nicolasdemaria2164
    @nicolasdemaria2164 2 ปีที่แล้ว

    te quiero mucho fazt

  • @arnifuentes7055
    @arnifuentes7055 ปีที่แล้ว

    Gracias Fazt!!!!

  • @robertovalerio4390
    @robertovalerio4390 2 ปีที่แล้ว

    Muchas gracias por esto, increible

  • @antoniopaz3575
    @antoniopaz3575 ปีที่แล้ว

    FAZT muy buen video, la verdad siempre que busco algo que aprender, siempre estas tu, queria preguntarte, si puedes hacer un video sobre como hacer un CRUD con relaciones N:N con fastapi, o si ya hiciste un video que hables de ello, la verdad me ayudarias bastante, si cuentas con alguna comunidad de Fast API que me pueda ayudar, gracias de antemano, muy buenos videos

  • @mrcbqr
    @mrcbqr 2 ปีที่แล้ว

    Excelente contenido!

  • @orlandomanuelospinohernand9869
    @orlandomanuelospinohernand9869 3 ปีที่แล้ว

    Hola fazt muy buena explicación, consulta este framework tiene autenticación? 🇨🇴🇨🇴👍👍

  • @ximenadelaluzcontrerasmend8161
    @ximenadelaluzcontrerasmend8161 2 ปีที่แล้ว

    Me sirvió muchisimo gracias :3

  • @joseparra1620
    @joseparra1620 2 ปีที่แล้ว

    Excelente. Graciasss

  • @eduardolopezcolmenero
    @eduardolopezcolmenero ปีที่แล้ว

    Y este proyecto se podría deploy en serverless? Como a un lambda? O se tendría que desarrollar para lambda específicamente?

  • @inakidiez5428
    @inakidiez5428 2 ปีที่แล้ว

    gracias bro, me re ayudo

  • @arthurblair6999
    @arthurblair6999 9 หลายเดือนก่อน

    Buenas Fazt, como haces para recargar la consola? Yo le pico ctrl + c y vuelvo a ejecutar uvicorn app:app

  • @SamirJzVFX
    @SamirJzVFX 3 ปีที่แล้ว

    Buenísimo video. Solo me surgió una duda, de cusndo a aqui Python declara variables como si fuera Kotlin? Ej: variable:int

    • @christiangivc1196
      @christiangivc1196 2 ปีที่แล้ว

      python siempre lo ha hecho así, solo que no es muy común, pues python lo hace de manera automática

  • @dmellito1787
    @dmellito1787 2 ปีที่แล้ว

    eres un capo papa

  • @manuelduarte8880
    @manuelduarte8880 3 ปีที่แล้ว +2

    primer comentario jajaja, genial buen video como siempre grande Fazt

  • @sebastiananea3173
    @sebastiananea3173 2 ปีที่แล้ว

    Excelente el video, pero me queda una duda.
    En el update, en lugar de hacer cada propiedad (por ej posts[index]["title"] = updatedPost.title y asi con todas) no se puede y es conveniente hacer directo posts[index] = updatedPost?

    • @dusk1706
      @dusk1706 ปีที่แล้ว

      si se hace asi se estaria actualizando tanto el id como la fecha de creacion

  • @AlanHernandez-ng4fd
    @AlanHernandez-ng4fd 3 ปีที่แล้ว

    Volvió

  • @josemariadiy6400
    @josemariadiy6400 2 ปีที่แล้ว

    Hola,
    Al 2022 que framework me recomiendas usar en el ecosistema Python..... Django, Flask o FastApi ??
    🤔🤔🤔🤔
    Saludos

    • @FaztCode
      @FaztCode  2 ปีที่แล้ว +1

      Personalmente te diría Django, fast api y luego flask

    • @josemariadiy6400
      @josemariadiy6400 2 ปีที่แล้ว

      @@FaztCode muchas gracias 👍

  • @jeanfabraruiz7994
    @jeanfabraruiz7994 2 ปีที่แล้ว

    Cómo hago para que cuando esté en el localhost del navegador se me vean los datos igual de organizados como en el min 36:51
    Pasa que me aparece la lista de los post pero en una línea

  • @rubendarksun6691
    @rubendarksun6691 2 ปีที่แล้ว

    Buenísimo vídeo. Podrías decirnos cuál es el theme que usas en VS Code?

  • @jobadolfosalinashernandez265
    @jobadolfosalinashernandez265 7 หลายเดือนก่อน

    Para Heroku me está pidiendo agregar un método de pago, tú cómo le hiciste para que no te cobrara?

    • @FaztCode
      @FaztCode  7 หลายเดือนก่อน +1

      Cuando grabe el video era gratuito ahora ya es de pago otra opción para desplegar proyectos de Python gratis puede ser render.com

    • @jobadolfosalinashernandez265
      @jobadolfosalinashernandez265 7 หลายเดือนก่อน

      ​@@FaztCodemuchas gracias!

  • @kbra17
    @kbra17 3 ปีที่แล้ว

    Se podria anadir el uuid al modelo?

  • @zrjcoding
    @zrjcoding 2 ปีที่แล้ว

    Como puedo hacer el metodo PUT (editar) pero ya con una base de datos?

  • @manuelcobasguerra5688
    @manuelcobasguerra5688 3 ปีที่แล้ว +2

    Buenas horas para subir video :D

    • @FaztCode
      @FaztCode  3 ปีที่แล้ว +1

      xD igual muchos programadores duermen tarde :P

    • @alejandrootero5989
      @alejandrootero5989 3 ปีที่แล้ว +1

      Es una buena hora para programar.

    • @manuelcobasguerra5688
      @manuelcobasguerra5688 3 ปีที่แล้ว

      @@alejandrootero5989 aqui son la 2:24am jsjsjs

    • @alejandrootero5989
      @alejandrootero5989 3 ปีที่แล้ว

      @@manuelcobasguerra5688 También vivo en Venezuela.

    • @manuelcobasguerra5688
      @manuelcobasguerra5688 3 ปีที่แล้ว

      @@FaztCode xd, gracias por el contenido :D

  • @cristianezequiel815
    @cristianezequiel815 10 หลายเดือนก่อน

    Hola nesecito ayuda con el error 422 lo tengo igual que vos y no me deja hacer el post

  • @carloscubas8405
    @carloscubas8405 3 ปีที่แล้ว

    Hola Fazt, primero que nada gran video !.. una consulta rapida, en mac os al crear el ambiente virtual me lo instala con la version de python 3.9.6 mientras que mi version del sistema es 2.7.16, la cuestion es que estando en vscode, en la terminal integrada al hacer el "python --version" me muestra la 2.7.16 cuando en teoria deberia ser la otra, ¿Sabes a que se podria deber eso? , es simple pero quisiera saber a que se debe !... gracias de antemano !

    • @leiberbertel2275
      @leiberbertel2275 ปีที่แล้ว

      Dentro de las opciones de Visual Studio Code debes elegir aquella que dice elegir interprete; ahí seleccionar la que aparece con la opción venv (virtual envirements o entorno virtual) para que así te cargué la versión que descargaste con pip o pip3. Espero esto te ha ayudado

  • @leandrovillalobos2828
    @leandrovillalobos2828 3 ปีที่แล้ว +3

    por un momento pensé que habías creado tu propio framework con mujerzuelas y juegos de azar(comentario de Bender en Futurama XD)

  • @luisfelipe-pt5ts
    @luisfelipe-pt5ts 3 ปีที่แล้ว +3

    Primer comentario

    • @luisfelipe-pt5ts
      @luisfelipe-pt5ts 3 ปีที่แล้ว +2

      Saludos Fazt gracias por tanto

    • @manuelduarte8880
      @manuelduarte8880 3 ปีที่แล้ว +3

      @@luisfelipe-pt5ts rayos casi te gano jajja

  • @alxa6079
    @alxa6079 3 ปีที่แล้ว +1

    FastAPI es un fw creado por talento latino

  • @DPM-TI--MatheusAnalistadesiste
    @DPM-TI--MatheusAnalistadesiste 2 ปีที่แล้ว +1

    toppppppppppppppppppppppppppppp

  • @manuelcobasguerra5688
    @manuelcobasguerra5688 3 ปีที่แล้ว +3

    Sexto Comentario :D

    • @FaztCode
      @FaztCode  3 ปีที่แล้ว

      Excelente :D

  • @hagoresumenes9224
    @hagoresumenes9224 9 หลายเดือนก่อน

    -fazt ¿por que usas tab de 8 espacios?
    -mis motivaciones van mas allá de tu entendimiento

    • @FaztCode
      @FaztCode  9 หลายเดือนก่อน

      jajaj

  • @penukulashiva
    @penukulashiva 2 ปีที่แล้ว

    I have some dout could you help me

  • @carlosjaredmartinezleon3251
    @carlosjaredmartinezleon3251 2 ปีที่แล้ว

    Muy buen video!
    Quise subir una app de reconocimiento facial pero en el repositorio de git me apareció "Method not allowed" y en el link de heroku me apareció "Internal Server Error" :( no sé qué hice mal

    • @FaztCode
      @FaztCode  2 ปีที่แล้ว +1

      en heroku para poder ver los errores de consola puedes escribir el comando:
      heroku logs --tail
      devcenter.heroku.com/articles/logging
      o que error obtienes al momento de desplegar? 🤔

  • @lambdacoding9618
    @lambdacoding9618 2 ปีที่แล้ว

    Disculpa ,Que tema usas para vscode?

    • @FaztCode
      @FaztCode  2 ปีที่แล้ว

      Este tema se llama Dobri Next

    • @lambdacoding9618
      @lambdacoding9618 2 ปีที่แล้ว

      @@FaztCode genial!! Gracias

  • @tupapielrey3978
    @tupapielrey3978 6 หลายเดือนก่อน

    me trabe en la parte 29:00 me sigue saliendo error 422 help me

    • @zasory
      @zasory 6 หลายเดือนก่อน

      Amigo mio , pude resolverlo, espero llegar a tiempo con la respuesta, la deje como comentario , de todos modos te envio el código:
      from fastapi import FastAPI
      from pydantic import BaseModel #Modelo inicial, como van a lucir nuestros datos
      from typing import Text, Optional
      from datetime import datetime
      from fastapi import HTTPException, status
      from fastapi.encoders import jsonable_encoder
      from uuid import uuid4 as uuid
      app = FastAPI()
      posts = []
      # Post Model
      class Post(BaseModel):
      id: Optional[str] = None
      title: str
      author: str
      content: Text
      created_at: datetime = datetime.now()
      published_at: Optional[datetime] = None
      published: bool = False
      @app.get('/')
      def read_root():
      return { "welcome":"welcome to my REST API" }
      @app.get('/posts')
      def get_posts():
      return posts
      @app.post('/posts')
      def save_post(post : Post):
      post.id = str(uuid())
      post_dict = jsonable_encoder(post)
      posts.append(post_dict)
      return "recibido"

  • @MsSoldadoRaso
    @MsSoldadoRaso 3 ปีที่แล้ว

    Sube una SLOW API

  • @yoenyutub
    @yoenyutub 3 ปีที่แล้ว +1

    FastAPI, el framework Python de creación de API creado por Fazt.

  • @beldark4461
    @beldark4461 3 ปีที่แล้ว +1

    ....... perdido ............ reaparesiste .......

    • @FaztCode
      @FaztCode  3 ปีที่แล้ว +1

      He estado haciendo streams de hecho todo los dias en Twitch ;)
      pero ya estoy devuelta en TH-cam con más contenido

  • @cristhianipanaquesanchez4679
    @cristhianipanaquesanchez4679 2 ปีที่แล้ว

    Hola buen tutorial, pero tengo un error al momento de ejecutar "git push heroku main" aparece esto:
    ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: '/C:/Windows/TEMP/abs_e9b7158a-aa56-4a5b-87b6-c00d295b01fanefpc8_o/croots/recipe/certifi_1655968940823/work/certifi'
    Alguna solución o recomendación..
    Gracias!