Веб-приложение на FastAPI. Poetry, Pydantic V2, APIRouter, CRUD. Видео 1

- системы контроля зависимостей Pipenv, Poetry
- FastAPI 0.100.0, pydantic V2
- валидаторы Annotated и Field
- API Router, CRUD actions
Видео №1
Код тут github.com/mahenzon/micro-sho...
Ссылки на соцсети:
- KZread: / @surenkhorenyan
- RuTube rutube.ru/channel/29899055/
- Канал в ТГ t.me/Khorenyan
- Паблик в ВК surenkhorenyan
Метки:
00:00 0. Введение
00:31 1. Poetry. Системы контроля зависимостей
11:50 2. Валидация через Path + Annotated
16:42 3. API Router | Пространства имён это круто
23:37 4. Модули. Пространства имён для CRUD Actions
27:00 5. annotated types - дополнительная валидация
28:20 6. CRUD Actions
30:27 7. Проверка работы валидации
31:57 8. Синхронизация окружения и установка pydantic + email validator
35:46 9. Итоги

Пікірлер: 110

  • @rebelbait
    @rebelbait12 күн бұрын

    весьма странно, что на англо и русс ресурсах нет никого кто бы так детально объяснил как это все переплетается и работает, находил и платные курсы, они уже неактуальны, спасибо за огромный труд! успехов

  • @SurenKhorenyan

    @SurenKhorenyan

    12 күн бұрын

    Пожалуйста! Рад, что нашли, и вам понравилось 🥰 Спасибо 😊

  • @user-kh3pc6hd1o
    @user-kh3pc6hd1o6 ай бұрын

    с таким разжевыванием тебе нужно платные курсы делать! из всех мною просмотренных питонистов ты лучший

  • @SurenKhorenyan

    @SurenKhorenyan

    6 ай бұрын

    Хах, берегитесь своих желаний 😅 Спасибо! Рад трудиться 🥰

  • @user-ih8vs8xw2c
    @user-ih8vs8xw2c11 ай бұрын

    Спасибо, продолжай!! Очень круто объясняешь, все по полочкам

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    Пожалуйста! Рад стараться 😊 Обязательно будет ещё

  • @milov52
    @milov527 ай бұрын

    Еще один замечательный урок!

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    Спасибо! Очень приятно 🥰

  • @honley1
    @honley110 ай бұрын

    Очень круто , продолжайте в том же духе , один из самых понятных видео по fastapi

  • @SurenKhorenyan

    @SurenKhorenyan

    10 ай бұрын

    Спасибо большое! Рад стараться. Новое видео уже на подходе 💪

  • @user-it3yo1sn6i
    @user-it3yo1sn6i11 ай бұрын

    Круто! Как раз только утром смотрел ваши уроки на скиллбокс по деплою джанго проекта. Poetry рулит!

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    Ага, poetry классная штука!

  • @user-cp8ou1ot5z
    @user-cp8ou1ot5z6 ай бұрын

    С удовольствием посмотрел контент! Лайк однозначно!

  • @SurenKhorenyan

    @SurenKhorenyan

    6 ай бұрын

    Спасибо большое! Очень приятно 🥰

  • @cherdak_turista
    @cherdak_turista11 ай бұрын

    Спасибо! У вас хорошо получается объяснять, продолжайте пж уроки по Fastapi.

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    Пожалуйста! Спасибо большое за обратную связь Обязательно буду продолжать. Надеюсь, быстро соберём лайки 😊

  • @valeria_novogran
    @valeria_novogran7 ай бұрын

    Здравствуйте! очень круто спасибо!

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    Добрый день! Супер, пожалуйста!

  • @user-fg4wm8hr7n
    @user-fg4wm8hr7n6 ай бұрын

    Шикарное объяснение, сразу видно человек разбирается в теме отлично!

  • @SurenKhorenyan

    @SurenKhorenyan

    6 ай бұрын

    Класс, мне очень приятно!

  • @daniyarbatyrbaev3098
    @daniyarbatyrbaev30984 ай бұрын

    Очень подробное, а главное понятное объяснение. Смотрел на других каналах, понимал, через слово, здесь все очень легко усваивается!

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

    Крутяк! Я рад, что вам понравилось!

  • @cronosnoname4038
    @cronosnoname40384 ай бұрын

    Классно и четко объясняешь - быстро, без воды и всё по делу ! Видно, что готовился к записи и заморачивался с подрезкой видео 👍 странно что на канале так мало просмотров, годный проработанный контент

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

    Кайф, спасибо! Рад, что вы замечаете и цените старания! Надеюсь, просмотров станет больше, пока работаем с тем, что есть 🙂

  • @emreaaga
    @emreaaga23 күн бұрын

    Спасибо большое за урок!

  • @SurenKhorenyan

    @SurenKhorenyan

    23 күн бұрын

    Пожалуйста!

  • @andreyromanenko7942
    @andreyromanenko79427 ай бұрын

    пока это одно из лучших объяснений по fastapi, спасибо!

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    Круто, пожалуйста! И вам спасибо за отзыв

  • @shisll
    @shisll9 ай бұрын

    Моментами думаешь "Где ты был раньше" Спасибо!

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Хах 😅 Лучше поздно, чем никогда 😄

  • @marselmikhaylov8049
    @marselmikhaylov80494 ай бұрын

    Все четко и по делу! 👍👍👍

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

    Спасибо!

  • @efibutov
    @efibutov4 ай бұрын

    Хорошее видео, годное.

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

    Кайф, спасибо!

  • @kositzyn
    @kositzyn9 ай бұрын

    Класс, спасибо!

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Пожалуйста! Рад трудиться 😊

  • @marik_aaa
    @marik_aaa5 ай бұрын

    Шат апрес 🤝

  • @SurenKhorenyan

    @SurenKhorenyan

    5 ай бұрын

    Спасибо! 🥰

  • @3agoskin
    @3agoskinАй бұрын

    Отличный ролик, задумался вернуться в Пайтон и проект построить на ФастАпи, а не на Нест

  • @SurenKhorenyan

    @SurenKhorenyan

    Ай бұрын

    круто! а я как-то пару лет назад думал что-нибудь на nest сделать, но так и не придумал, что хочу

  • @psylo1841
    @psylo184111 ай бұрын

    спасибо!

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    пожалуйста! и спасибо вам за комментарий ☺

  • @user-gr2wn3ob2u
    @user-gr2wn3ob2u9 ай бұрын

    Все понятно, спасибо за труды! Сколько планируется видео по FastAPI? И на какой уровень, после прохождения "курса" можно рассчитывать?

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Пожалуйста! Рад трудиться. Планирую делать видео, пока тема не исчерпает себя, это ещё минимум 5 роликов, а то и больше. Уровень зависит только от вас. Пишите код, повторяйте за видео, пробуйте свои идеи. Обязательно получится

  • @Mblshko
    @Mblshko8 ай бұрын

    Спасибо большое за уроки! После команды "poetry install --sync" у меня стерся и сам poetry) Если не сложно, можете объяснить почему?😅

  • @SurenKhorenyan

    @SurenKhorenyan

    8 ай бұрын

    Блин, вот это подвох 😅 Дело в том, что у меня poetry установлен глобально. А вы, скорее всего, установили его в текущий интерпретатор. И получилось, что poetry удалил лишнее (в том числе и себя) из текущего окружения

  • @Ratmirsh
    @Ratmirsh4 ай бұрын

    Было бы удобно, если бы ты распилил каждое видео по бранчам на гитхабе. Может в будущем попробуешь)

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

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

  • @ZenLebowski
    @ZenLebowski3 ай бұрын

    сложно когда твой уровень "world("hello print")" но я не сдаюсь и пока ничего не крашится)

  • @SurenKhorenyan

    @SurenKhorenyan

    3 ай бұрын

    Круто! Правильно, нужно писать код, чтобы научиться

  • @den-rad
    @den-rad9 ай бұрын

    Я недавно в python, думал что там только pip. А тут есть такой-же хороший инструмент, как composer в PHP

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    ага! это обертка над pip. очень крутая штука

  • @NoName-hi8bv

    @NoName-hi8bv

    7 ай бұрын

    Такая же история. Как я раньше жил без poetry. Кстати я всегда ныл по поводу, почему нельзя сделать просто дерево зависимостей. Что бы если какой то можуль больше ненужен. Можно было с корнем вырвать его с вместо с звисимостями

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    @@NoName-hi8bv Pipenv, poetry это наше спасение

  • @Razumist
    @Razumist11 ай бұрын

    да какой ты Сурэн))

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    Всё верно, ведь пишется Сурен 😊

  • @user-sy9gf1sk2y

    @user-sy9gf1sk2y

    9 ай бұрын

    @@SurenKhorenyan Вылитый Беларус. :)

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    @@user-sy9gf1sk2y 🚜🚜🚜

  • @_balancy_
    @_balancy_9 ай бұрын

    Хороший контент. Сурен, а как сделать чтобы у каждого endpoint отображался автор, как у тебя?

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Спасибо Это в новых версиях PyCharm, если использовать git версионирование, он подсвечивает автора функций и классов

  • @xewuss3750

    @xewuss3750

    6 ай бұрын

    GitLens у VSCode, если нет пучарма

  • @dmitryvladimirov611
    @dmitryvladimirov6119 ай бұрын

    @SurenKhorenyan а какая тема в pycharm используется? Приятная глазу прямо

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Это тема One Dark. Да, крутая. Выделяет больше сущностей, чем стандартная тема

  • @dmitryvladimirov611

    @dmitryvladimirov611

    9 ай бұрын

    @@SurenKhorenyanбольшое спасибо (и за видео тоже)

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    пожалуйста! рад трудиться

  • @user-vz9xf3on4i
    @user-vz9xf3on4i6 ай бұрын

    Сурен, скажи, пожалуйста, зачем нужно многоточие в Field()?

  • @SurenKhorenyan

    @SurenKhorenyan

    6 ай бұрын

    Многоточие в Python это специальный объект, называется Ellipsis. В Field его нужно передавать, чтобы явно указать, что поле обязательное.

  • @maxkhrisanfov
    @maxkhrisanfov4 ай бұрын

    Вначале сам себе проблему создал запустив pip freeze :)

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

    Хорошо, что разобрались в итоге 🙂

  • @maxkhrisanfov

    @maxkhrisanfov

    4 ай бұрын

    @@SurenKhorenyan спасибо за уроки, у тебя талант объяснять.

  • @SurenKhorenyan

    @SurenKhorenyan

    4 ай бұрын

    @@maxkhrisanfov пожалуйста! Рад, что вам нравится

  • @VitalyTolmachev
    @VitalyTolmachev9 ай бұрын

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

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Привет! - zsh - oh-my-zsh - тема spaceship-prompt github.com/spaceship-prompt/spaceship-prompt

  • @VitalyTolmachev

    @VitalyTolmachev

    9 ай бұрын

    @@SurenKhorenyan Жаль, думал простой плагин. Под Виндой думаю нет смысла его ставить

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    на винде не уверен, как будет работать. только если в оболочке bash добавлять я сделаю подробное видео про настройку

  • @user-cf4qg5pu3g
    @user-cf4qg5pu3g8 ай бұрын

    Какое сочетания клавиш используется на 20:03? Заранее спасибо

  • @SurenKhorenyan

    @SurenKhorenyan

    8 ай бұрын

    Это Select next occurrence, наверное, Alt + J www.jetbrains.com/help/pycharm/multicursor.html#multiselection На маке Ctrl + G

  • @aivenwhite4611
    @aivenwhite4611Ай бұрын

    в имени видео написано, что это первое видео, однако автор упоминает о каком-то предыдущем видео

  • @SurenKhorenyan

    @SurenKhorenyan

    Ай бұрын

    Зайдите в плейлист, там есть видео под номером ноль 🙂

  • @aivenwhite4611

    @aivenwhite4611

    Ай бұрын

    @@SurenKhorenyan ох уж эти программисты :D

  • @Andrew-uq7ni
    @Andrew-uq7ni6 ай бұрын

    Привет, после команды > poetry install выводит: "The current project could not be installed: No file/folder found for package busbooking If you do not want to install the current project use --no-root" Подскажи пожалуйста как исправить. Спасибо за видео!

  • @SurenKhorenyan

    @SurenKhorenyan

    6 ай бұрын

    Привет. Без кода не могу гадать. Приходите в чат в тг, разберёмся

  • @225Desmond
    @225Desmond7 ай бұрын

    А для чего нужен venv, если мы используем poetry?

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    Они друг друга не заменяют. Инструмент poetry использует виртуальные окружения. Умеет создавать их автоматически и определять текущие

  • @225Desmond

    @225Desmond

    7 ай бұрын

    @@SurenKhorenyan Разве poetry shell не достаточно?

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    ​@@225Desmondэта команда как раз таки запускает оболочку в виртуальном окружении. Практически эквивалент активации виртуального окружения. Просто если его нет, то создаёт

  • @user-nu3ot7td1j
    @user-nu3ot7td1j2 ай бұрын

    'charmap' codec can't decode byte 0x98 in position 17: character maps to - у меня вот такая ошибка при попытке сделать что-то с poetry

  • @SurenKhorenyan

    @SurenKhorenyan

    2 ай бұрын

    😱😱😱 Приходите в Телеграм чат, показывайте проблему, разберёмся

  • @user-wi1wf3xj2i
    @user-wi1wf3xj2i6 күн бұрын

    добрый день а подскажите что за плагины стоят для терминала pycharm

  • @SurenKhorenyan

    @SurenKhorenyan

    6 күн бұрын

    Здравствуйте! Очень подробно "от и до" показывал в ролике kzread.info/dash/bejne/a6ii2dGvo9zIh8o.html

  • @user-wi1wf3xj2i

    @user-wi1wf3xj2i

    4 күн бұрын

    @@SurenKhorenyan спасибо

  • @SurenKhorenyan

    @SurenKhorenyan

    4 күн бұрын

    Пожалуйста!

  • @redfox6179
    @redfox617911 ай бұрын

    добрый день, у вас есть курсы?

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    здравствуйте! в данный момент личных курсов на своей платформе у меня нет можно найти на разных образовательных платформах, там моя программа, но я их не рекламирую

  • @redfox6179

    @redfox6179

    11 ай бұрын

    @@SurenKhorenyan мне бы чисто по fastapi

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    ну, вот потихоньку выкладываю на канале. главное чтобы спрос был

  • @denk2k
    @denk2k11 ай бұрын

    Качество видео 360р. Так и задумано?🤔

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    хах, нет. Просто ютуб очень долго обрабатывает видео. Оно выложено в 1440p 60fps, но в ютубе ещё недоступно. Он уже больше часа обрабатывает и говорит, что до HD качества ещё 110 минут. В ВК обработка моментальная, то же видео уже доступно в максимальном качестве в группе vk.com/surenkhorenyan просто не стал ждать ютуб чтобы опубликовать везде 🙃

  • @denk2k

    @denk2k

    11 ай бұрын

    @@SurenKhorenyan спасибо за ответ) и спасибо за качественный контент👍

  • @SurenKhorenyan

    @SurenKhorenyan

    11 ай бұрын

    @@denk2k рад старатья! спасибо за обратную связь и теплые слова ☺

  • @gedal9841
    @gedal98412 ай бұрын

    после poetry install --sync у меня поетри удалил сам себя, лол. Качаю щас заново

  • @SurenKhorenyan

    @SurenKhorenyan

    2 ай бұрын

    Да, всё так. Это если он был установлен в текущее локальное виртуальное окружение. Поэтому лучше ставить poetry глобально

  • @gedal9841

    @gedal9841

    2 ай бұрын

    буду считать это такой пранк первоапрельский, я неплохо посмеялся@@SurenKhorenyan

  • @SurenKhorenyan

    @SurenKhorenyan

    2 ай бұрын

    😁😁😁

  • @B0JIKA
    @B0JIKA9 ай бұрын

    Спасибо. Очень подробно. kzread.info/dash/bejne/fJmKusSNpbvRfso.html не переопределяет, а добавляет...

  • @SurenKhorenyan

    @SurenKhorenyan

    9 ай бұрын

    Да, вы абсолютно правы. В фласк идёт переопределение, а тут добавление. Уточню в следующем видео обязательно Спасибо за комментарий! 🥰

  • @nv1889
    @nv18897 ай бұрын

    2:53 Updating pytzdata 🤣

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    Так, вроде оно и написано. А что не так? 🤔

  • @nv1889

    @nv1889

    7 ай бұрын

    ну читается, как "пиздата")))@@SurenKhorenyan

  • @SurenKhorenyan

    @SurenKhorenyan

    7 ай бұрын

    @@nv1889 но это же Python timezone data..