How to build a FastAPI app with PostgreSQL

Поделиться
HTML-код
  • Опубликовано: 22 сен 2024

Комментарии • 94

  • @mattmarshall1834
    @mattmarshall1834 6 месяцев назад +4

    Great tutorial. Very quick and to the point. It would be interesting to see a video about releasing a FastAPI/React/Postgres application to AWS or GCP.

  • @pipe3194
    @pipe3194 Год назад +6

    Great job! 🎉 I really appreciate clears and directs explanations like this one

    • @codingwithroby
      @codingwithroby  Год назад

      Woot woot! I am so glad you were able to find some value. Cheers!!!

  • @ibrahimshazly9580
    @ibrahimshazly9580 2 месяца назад +1

    Hi, Mr Roby
    on 14:30
    i am wondering why you didn't add
    question = relationship("Question") # Establish relationship
    to choices model
    ---
    and thanks for your tutorial

  • @trixer230
    @trixer230 5 месяцев назад +1

    I would love this tutorial but showing how to use relationships. For instance how would you make it pull all the answers automagically when the question is pulled?

  • @NobixLee
    @NobixLee 3 месяца назад

    Watching on my phone, can’t wait to follow along I actually need to fully understand this for work. Thanks man

  • @MaicolArgumedo-m9w
    @MaicolArgumedo-m9w 11 месяцев назад +1

    Erck tu ejemplo me ayudo a entender mejor FastApi he visto varios videos y el tuyo es uno de los mejores que los explica, sencillo y al grano, gracias!

  • @thegreekgoat98
    @thegreekgoat98 Год назад +5

    It would have been much better if you have explained the logic behind the lines and what it does more clearly especially in database part.

  • @lotusmojo
    @lotusmojo 6 месяцев назад +1

    Great job buddy!.. very clear and concise

  • @aviraltiwari3412
    @aviraltiwari3412 Год назад +2

    Great video. Lot of quality of content. Very informative! I'd suggest creating videos related to CORS, that would be great!

  • @onclick-xt3mu
    @onclick-xt3mu Месяц назад +1

    Very Great Tutorial, Greetings from Egypt

  • @muhammadnajamulislam2823
    @muhammadnajamulislam2823 8 месяцев назад +1

    very nice and easy way of teaching

  • @rafiali7315
    @rafiali7315 8 месяцев назад +1

    i watched your three times but i am got same error my question pass in db perfectly but choices doesnt put,

  • @ЭрнестОлмасхон
    @ЭрнестОлмасхон 2 месяца назад +1

    thank u man!!! i don't understand all ur words, because my english not good. But this video was better than videos in my native language. I hope that u do more videos about FastAPI, actually FastUI. Thank u so much another time.

  • @Tommy-and-Ray
    @Tommy-and-Ray 8 месяцев назад +1

    Great video. Could you share the repo link by any chance please?

    • @codingwithroby
      @codingwithroby  8 месяцев назад

      Hey friend, for this video I never saved the repo. Sorry!

  • @cesardavidmillan6648
    @cesardavidmillan6648 11 месяцев назад +1

    It was a great tutorial! even though I made a few changes while watching the tutorial! way to go!

  • @yvysunu
    @yvysunu 10 дней назад

    nice video! do you have one implementing postgres + data validation + docs + auth?

    • @codingwithroby
      @codingwithroby  10 дней назад +1

      I think scattered around I do - I have a best selling FastAPI course you can take. That will 100% have what you are looking for.

    • @yvysunu
      @yvysunu 8 дней назад

      @@codingwithroby where do I find it?

    • @codingwithroby
      @codingwithroby  7 дней назад

      @@yvysunu In the description above for this video under Courses.

  • @fatti.casuali
    @fatti.casuali Год назад +1

    Hi! Can anyone help me? I would like to have a GET endpoint that returns a JSON like this:
    {
    "question_text": "question",
    "choices": [
    {
    "choice_text": "answer1",
    "is_correct": true
    },
    {
    "choice_text": "answer2",
    "is_correct": false
    },
    {
    "choice_text": "answer3",
    "is_correct": false
    },
    {
    "choice_text": "answer4",
    "is_correct": false
    }
    ]
    }
    How do I do it? It seems like I can't select the columns I want even if the query seems right:
    print(select(Questions, Choices).where(Questions.id == Choices.question_id))
    SELECT questions.id, questions.question_text, choices.id AS id_1, choices.choice_text, choices.is_correct, choices.question_id
    FROM questions, choices
    WHERE questions.id = choices.question_id
    Thanks for the help!

    • @codingwithroby
      @codingwithroby  Год назад

      If you want this all in a single JSON, I would suggest creating another Python object that holds a String along with the choices objects, query the DB and place the info accordingly with the object you are returning.

    • @elykou4843
      @elykou4843 Год назад

      Post IS where you creat every thing'Just past it in thé post Doc and get it in thé get questions.

  • @fahdagodzo5795
    @fahdagodzo5795 5 месяцев назад +1

    thanks, it's been helpful

  • @DIVYANAMBIAR-by7om
    @DIVYANAMBIAR-by7om 4 месяца назад

    Thank you, Eric. Really helpful

  • @Anteater23
    @Anteater23 3 месяца назад +1

    Great video

  • @dipanjansaha6824
    @dipanjansaha6824 Год назад +1

    Coming from MVC background! How about we put the files into a production grade folder 📂 structure?

    • @codingwithroby
      @codingwithroby  Год назад

      The idea here was to simply show how to setup FastAPI with PostgreSQL. I appreciate your feedback🙂

    • @metinEsturb
      @metinEsturb 11 месяцев назад

      @dipanjansaha6824: how would this structure that you mention look like? Do you have any reconmendations?

  • @elykou4843
    @elykou4843 Год назад

    Mine works now.What a great teacher .thanks you too much.

  • @shotihoch
    @shotihoch 5 месяцев назад

    Absolute usefull tutorial. Found it... ughhh finally. Thank you! It was pretty hard to understand db_dependency = Annotated[Session, Depends(get_db)] logic, but with gpt i think I got it. Didnt get about async without await thing.... but I just think it some kind of inner processes of FastAPI requires it. Anyways thank you!

  • @hoho-g9n
    @hoho-g9n 9 месяцев назад

    Thank you so much! Very detailed explanation!

  • @domingotrejo4554
    @domingotrejo4554 Год назад +1

    in a production project the lines of create_all and Annotated go ouside of endpoints, are a good practice ?

    • @codingwithroby
      @codingwithroby  Год назад

      I would probably use migrations and have a deployment script do it, but for small/medium sized applications, absolutely!

  • @timothyatanda1188
    @timothyatanda1188 9 месяцев назад +1

    Eric, please do you have the completion of this tutorial in your Udemy class with the topic "Fastapi- The Complete Curse 2024 (Beginners+Avanced)? i mean the aspect of the delete, get _by_id and update"🙏

    • @codingwithroby
      @codingwithroby  8 месяцев назад

      It is not exactly this tutorial, but it shows how to do almost everything 🙂

    • @codingwithroby
      @codingwithroby  8 месяцев назад

      I am confident it will have what you are looking for

  • @vandanadubey2315
    @vandanadubey2315 10 месяцев назад

    Great Video Eric , Thank you

  • @sebastianmonroy5553
    @sebastianmonroy5553 День назад

    i need your help

  • @raulmedrano9818
    @raulmedrano9818 11 месяцев назад +1

    thanks excellent job

    • @codingwithroby
      @codingwithroby  11 месяцев назад

      Glad you were able to find value 🙂

  • @mrkzmusic
    @mrkzmusic 10 месяцев назад

    Thanks a lot Eric!

  • @goswami_himanshu
    @goswami_himanshu Год назад +1

    Great tutorial Eric.
    If you can create a video on slightly complex project using fastAPI and postgreSQL i'll watch it even if it's 3 hours long
    Btw you don't have to import List from typing anymore. New versions of python provides this already with the name list

    • @codingwithroby
      @codingwithroby  Год назад +1

      Thanks for the suggestion! What exactly are you wanting to see so I have a better understanding 🙂

    • @parnika2277
      @parnika2277 Год назад +1

      @@codingwithroby maybe a program that has 2 tables one for student info and one for student marks and then you calculate things like average, grade, etc

  • @AxlRoseGVillanueva
    @AxlRoseGVillanueva 5 месяцев назад

    Greate tutorial!! how can we update database if we made changes from models? I really appreciate!

    • @codingwithroby
      @codingwithroby  5 месяцев назад

      You will want to use something like Alembic. If it is a brand new app, you can delete the db and let SQLAlchemy recreate a new one for you.

  • @tihomirkamenov2862
    @tihomirkamenov2862 9 месяцев назад

    Awesome video!
    p.s. An async function without an await expression will run synchronously :)

    • @codingwithroby
      @codingwithroby  9 месяцев назад

      Nice addition!

    • @AzharRafiq
      @AzharRafiq 8 месяцев назад

      when we should use async vs def only?

    • @tihomirkamenov2862
      @tihomirkamenov2862 8 месяцев назад

      Typically, async returns another async def most of the time (with await) until it reaches the final stage - any data from database, message, string, int etc. On the last stage the def should be also async but it will return with no await
      So in this case, @codingwithroby is correct, my mistake! @@AzharRafiq
      However, we use async def to avoid big delays when fetching data. This allows the program to switch between multiple tasks without blocking the main thread.

  • @ledieuduballonrond456
    @ledieuduballonrond456 7 месяцев назад

    Hi Eric I hope you're doing well,
    I have a slight issue when I paste the URL on my browser i keep getting "detail" : "not found". If anyone could help me please ?

    • @mattmarshall1834
      @mattmarshall1834 6 месяцев назад

      What is the url that you are pasting? If you past the localhost url without anything after it the "detail":"not found" message will appear.

    • @ledieuduballonrond456
      @ledieuduballonrond456 6 месяцев назад

      So what should I paste ?

  • @timothyatanda1188
    @timothyatanda1188 9 месяцев назад

    What a comprehensive tutorial video, that was amazing!
    please do you have a class on Udemy where i can learn from you very well?

    • @codingwithroby
      @codingwithroby  9 месяцев назад

      Yes I do! Link is in description 🙂

  • @juandelgado6201
    @juandelgado6201 7 месяцев назад

    Can you share github repo with that project ?

  • @iVentusHD
    @iVentusHD Год назад

    HELLO PLEASE, i need you're help i followed the tuto exactly but when i want to launch the API i have an error "from sqlalchemy import Session
    ImportError: cannot import name 'Session' from 'sqlalchemy'"

    • @codingwithroby
      @codingwithroby  Год назад

      Hey friend! How is it going? Let's figure out what is going on here. When are you doing this? It should be session maker if you are adding: from sqlalchemy.orm import sessionmaker

    • @iVentusHD
      @iVentusHD Год назад

      @@codingwithroby hey, the ImportError is Gone but when i do the Post endpoint they add null data to the database (i try to make my own api with user and when i post an user i can see the ID in database but all of the other data is null)

    • @codingwithroby
      @codingwithroby  Год назад

      @@iVentusHD What does your Python method look like?

  • @VeejayRampay
    @VeejayRampay 6 месяцев назад

    class with a plural name are bad form but this is a nice video, props

  • @owaisahmed2063
    @owaisahmed2063 3 месяца назад

    pgadmin video link please

  • @snir109
    @snir109 Год назад

    Thank you

  • @notalanjoseph
    @notalanjoseph 10 месяцев назад

    How to host this on render?

    • @codingwithroby
      @codingwithroby  10 месяцев назад

      Render is one option and another option is AWS. I have a video on AWS deployment you may be interested in.

  • @akashsoni7925
    @akashsoni7925 9 месяцев назад

    Create something like this
    1) user registration in FastAPI ( Using two database PostgreSQL and MongoDB )
    Registration fields - Full Name,Email,Password,Phone,Profile_picture
    First Name,Password,Email,Phone - postgreSQL
    Profile picture - MongoDB
    Check Email already exist
    2) user registration in fastAPI ( Using postgreSQL )
    Registration fields - Full Name,Email,Password,Phone,Profile_picture
    Create table Users to store : First Name,Password,Email,Phone
    Create table Profile to store : Profile_picture
    Check Email , Phone already exist

  • @nehagawande1377
    @nehagawande1377 Год назад +1

    can you share code

    • @codingwithroby
      @codingwithroby  Год назад +2

      I do not have this code specifically anymore, but I can definitely look into keeping all code from my RUclipss.