Обзорный курс по FastAPI за 1 час. Создаем биржу труда. [ЧАСТЬ 1]

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

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

  • @flashxl555
    @flashxl555 3 года назад +5

    Спасибо, интересно! Ждём докер и джангу.

  • @doifgoox8510
    @doifgoox8510 2 года назад +2

    Мегастранный урок

  • @maxsuprun5371
    @maxsuprun5371 2 года назад +10

    если у кого-то , как и у меня будет выкидывать ошибку KeyError: ' ' при попытке подключиться к базе просто удалите export в .env файле

  • @axkxd
    @axkxd 2 года назад +6

    Если у вас выходит ошибка KeyError: '' после запуска базы данных, то ее можно исправить следующим образом: меняем название файла .env_dev на .env (и убbраем export из файла)

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

      Спасибо огромное, как ты до этого дошел?

  • @daymaker_trading
    @daymaker_trading 2 года назад +10

    Отличный урок, спасибо большое. Сам новичек, но лучше сразу нормально слушать, как тут подано, а не упрощенно для детей. Очень подробно рассказано, круто!!
    PS: Голос и манера повествования иногда отдаленно напоминает растаманские сказки, только про программирование :)

  • @TheHospicer
    @TheHospicer 2 года назад

    Спасибо, отличный урок, новичку будет конечно сложновато сразу такое, лучше сперва пощупать джанго и фласк

  • @maxx27i
    @maxx27i 2 года назад

    Спасибо, очень интересно! Видно мастерство! 👍

  • @palyaros02
    @palyaros02 2 года назад +3

    Можно спросить, почему использован императивный подход в алхимии, а не DeclarativeBase?

  • @Johniooooo
    @Johniooooo 3 года назад +3

    13:42 А почему используем Config из starlette, а не BaseSettings из pydantic, как это описано в документации FastApi? Есть какое-то преимущество?

    • @devroadx5279
      @devroadx5279  3 года назад +1

      Критичной разницы нет. Используя модели и BaseSettings - у вас объект конфига, используя starlette - вы получаете переменные с конфигурациями. На практике, видел и первый и второй подход в проектах. Показал просто для разнообразия. Сам предпочитаю тоже BaseSettings.

    • @yarmik3d
      @yarmik3d 3 года назад +3

      @@devroadx5279 Как обычно, сам использую одно, а показываю как делать другое, и так делают многие. Нахрена?

    • @devroadx5279
      @devroadx5279  3 года назад +1

      @@yarmik3d это всего лишь одна из минорных функциональностей? Неужели, это так важно для Вас или имеет критичную разницу для проекта?

    • @yarmik3d
      @yarmik3d 3 года назад

      @@devroadx5279 Это уж вы объясните почему предпочитаете одно, а показываете другое.

    • @МишаМихаил-ф7х
      @МишаМихаил-ф7х 3 года назад +2

      @@yarmik3d вы научитесь хотя бы с одним. Причем тут одно другое. Вкусы у автора такие

  • @yan200go
    @yan200go 2 года назад +3

    Классный проект! И вещи правильные говоришь

  • @ИльяАндрианов-ж2д
    @ИльяАндрианов-ж2д 2 года назад +1

    Про докер очень актуально было бы! всё остальное легко находится, а про него либо не понятно либо ничего

  • @Игорь-ч6ф3и
    @Игорь-ч6ф3и 2 года назад +1

    Хороший туториал. Но идея создавать таблицы неявным образом на этапе импорта - катастрофический провал.

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

    export : Имя "export" не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и правильность пути, после чего повторите п
    опытку.

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

    какой пароль в пгадмине, не пускает

  • @liho26
    @liho26 2 года назад +1

    Весьма странно. Экспорт переменной в окружение не дал результата. config('EE_DATABASE_URL', cast=str, default="") возвращает пустую строку.
    Докер базу не создал и пишет, что такой базы не найдено....
    Делал все, как на видео. Шаг за шагом.

    • @devroadx5279
      @devroadx5279  2 года назад

      Интересно, ты задал значение EE_DATABASE_URL в терминале?

    • @liho26
      @liho26 2 года назад

      @@devroadx5279 Конечно. Но, у меня MacOS. Возможно, из-за этого. Поэтому, сделал все просто. Напрямую присвоил переменной строку подключения.
      И, да. В видео есть один небольшой недочет. Если мы создаем таблицы автоматом при первом запуске, то и БД надо было бы так же создавать, при первом подключении.
      Кстати, еще вопрос. Как сгруппировать select() по определенному полю? Ни как не получается? Можешь поделиться кусочком примера?

  • @devroadx5279
    @devroadx5279  3 года назад +1

    Подписывайтесь на телеграмм канал: t.me/devroadx
    Скоро там будет эксклюзивный контент

  • @f0rzend59
    @f0rzend59 3 года назад +7

    Хороший видеоролик, но мне кажется для новичков будет сложно

  • @AndyPronin
    @AndyPronin 3 года назад +1

    Количество просмотров выглядит так, что фастапи никому не надо 0_о

  • @dmdm4330
    @dmdm4330 2 года назад +2

    Из-за манеры говорить - все время представляется что говорит Ваня Усович :)

    • @itsapumpkinpie7840
      @itsapumpkinpie7840 2 года назад

      лол, теперь я тоже это представляю

  • @cs_dequeue
    @cs_dequeue 2 года назад +1

    Хотелось бы заметить, что по бест практис, стоит называть таблицы в единственном числе, т е. user instead users, job instead jobs

    • @devroadx5279
      @devroadx5279  2 года назад +2

      Вы не совсем правы. Существует www.sqlstyle.guide/
      В котором: *Use a collective name or, less ideally, a plural form. For example (in order of preference) staff and employees.*

    • @cs_dequeue
      @cs_dequeue 2 года назад

      @@devroadx5279 спасибо за ответ и линк. Интересно конечно. Думаю этот стайл гайд имеет больший вес, чем то, что я где то услышал на ютюбе. Я уж забыл этот канал и до этого времени считал это истиной последней инстанции.

    • @ВиталийПеунов
      @ВиталийПеунов 2 года назад

      @@cs_dequeue мне кажется это идет из документации джанго, где прописано, что модели называть надо в единственном числе

    • @cs_dequeue
      @cs_dequeue 2 года назад

      @@ВиталийПеунов вполне возможно.

  • @ЛарикЛари
    @ЛарикЛари 3 года назад

    Каким образом идёт коннект к базе если она не создана? именно к EE базе

    • @devroadx5279
      @devroadx5279  3 года назад +1

      База создается с помощью докера, когда стартуем контейнеры с помощью docker-compose. Приложение создает только таблицы

    • @ПашаТрахимович
      @ПашаТрахимович 3 года назад +1

      @@devroadx5279 Сделай пожалуйста гайд по докеру

  • @yan200go
    @yan200go 2 года назад

    primary key=unique + not null. Там не надо было ставить unique

  • @AndyPronin
    @AndyPronin 2 года назад +2

    Вас обманывают. За час выучить фастапи невозможно

  • @МишаМихаил-ф7х
    @МишаМихаил-ф7х 3 года назад +3

    Почему не пайчарм? Легко используется для создания проекта. Я с нуля как начал сразу Pycharm освоил и потом уже понял как работать в консолях, с гитом и так далее

    • @lilstupidpoet
      @lilstupidpoet 3 года назад +6

      Потому что процесс написания кода мало зависит от IDE, а работу в консолях можно и без PyCharm'a освоить.

  • @Sadness-zov
    @Sadness-zov 2 года назад

    Вот мне любопытно, кто-нибудь кроме меня пробовал повторять за ним то, что он делает? Там половина ошибок вырезана.

    • @devroadx5279
      @devroadx5279  2 года назад

      Вроде ничего не вырезал важного, плюс есть репа с исходным кодом 🤔🤔🤔

  • @hackoffme
    @hackoffme 2 года назад +2

    Так вроде же алхимия умеет в асинхронность? async_session = sessionmaker(
    engine, class_=AsyncSession, expire_on_commit=False
    )

  • @_Vashe
    @_Vashe 2 года назад

    Голос дрожит, громкость то тихо то громко

  • @ryu8777
    @ryu8777 2 года назад

    Зачем создавать таблицы при запуске проекта? Почему нельзя создать их в пгадмине, сдампить структуру и таскать с собой если очень надо? К чему трата часа времени на то, что нужно сделать один раз? Я без претензий. Порсто везде одно и тоже. А зачем?

    • @devroadx5279
      @devroadx5279  2 года назад

      Это называется миграции. Можно в гугле прочитать для чего детальнее это используется.

  • @АзатОморов-п6э
    @АзатОморов-п6э 3 года назад +1

    было бы здорово если бы на пайчарме писали)

    • @Kotoffey
      @Kotoffey 3 года назад

      иде друг от други ни чем принципиальным не отличаются, если вы уже на этом моменте стопорнулись то стоит подумать может ИТ не для вас совсем, ибо такие хлебушки как вы дальше посложнее задачи решать не смогут.

    • @АзатОморов-п6э
      @АзатОморов-п6э 3 года назад

      @@Kotoffey даа спасибо за ваш совет ,я хлебушка дальше пошел учиться .

    • @СтаниславПопов-ю3з
      @СтаниславПопов-ю3з 2 года назад

      @@Kotoffey vscode - not IDE, friend)

  • @КириллГусарев-р5х
    @КириллГусарев-р5х 2 года назад

    Русское произношение, как и английское, не очень. Поэтому слушать не очень приятно

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

    Дизлайк, на 22 минуты ориентировочно уже нет совпадения реальности с видео. База не конектится с докером. И да, нет такой команды export, она не работает.

    • @ТестБлаБла
      @ТестБлаБла Год назад

      Возможно вы пишите используя виндовс. Этот пример на маке или линуксе. На винде другие команды. Советую для бекенд разработки использовать линукс

  • @codihuntsinger3698
    @codihuntsinger3698 3 года назад +3

    24:58
    В таблице "users" 2 primary_key, вы серьезно?
    После такого сразу понятно, что ничего стоящего от туториала можно не ожидать, к сожалению

    • @devroadx5279
      @devroadx5279  3 года назад

      Очевидно же что кусок кода еще не дописан до конца ¯\_(ツ)_/¯

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

      Капец ты душный, он скопировал кусок кода и потом его редактировал, к чему так душнить не понимаю
      Иди выйди в окно

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

      Капец ты душный, он скопировал кусок кода и потом его редактировал, к чему так душнить не понимаю
      Иди выйди в окно