Слишком усложняет, любит обмазаться бойлер плейтом, можно реализовать все гораздо проще и логичнее. Внутри директории приложения директория приложения, можно еще пару создать например вложенных директорий и утонуть в них. В общем на каждом шаге пытается сделать все не так как у всех, думая что делает правильно. UserIdType - это оверхед за который у нас на проекте палкой бьют по рукам джунов
@SurenKhorenyan2 ай бұрын
@@moroesx класс, приходите в чат в тг показать как надо. Я с удовольствием сделаю новый ролик на тему
@Miron_NicolaevichАй бұрын
Согласен, но как попадаешь на собеседование, чуть ли не спрашивают что предпочитает Гвидо на ужин и какие у него тапочки. Я это к тому что да, базу знать должен каждый, но на собесах такие дотошные попадаются, что для того что бы просто пройти тех-собез нужно прочитать как минимум "Внутри С-Python" или написать на live-coding RB tree к примеру. А позиция на которую ты претендуешь- CRUD-ошлепить api 🤒
@SurenKhorenyanАй бұрын
@@Miron_Nicolaevich Ого какие теперь ожидания от джунов
@SurenKhorenyanАй бұрын
@@Miron_Nicolaevich Ого какие теперь ожидания от джунов
@SurenKhorenyanАй бұрын
@@Miron_Nicolaevich Ого какие теперь ожидания от джунов
@Alex-zl7wg3 ай бұрын
Превосходная подача материала! Всё подробно и в то же время ничего лишнего. Преподавать ваше призвание! Спасибо за курс.
@SurenKhorenyan3 ай бұрын
Супер, пожалуйста! Очень приятно 🥰
@andrewkuzmin44006 ай бұрын
Это конечно замечательно и прекрасно когда мы редко запускаем код (только на 1:08:25), но вот представьте, это видео смотрит новичок, он где-то в течении этого часа допустил какую-то ошибку и не заметил этого (не грамматическую, а, например, где-то лишние скобочки поставил) и выяснилось только в процессе запуска кода, когда код "не взлетел". Теперь вопрос, а какому шагу из этого часа ему откатываться чтобы понять что он не так сделал?
@SurenKhorenyan6 ай бұрын
Благодаря очень понятным, даже невероятно понятным описаниями ошибок в Python у желающего получится разобраться без каких-либо проблем 🙂
@vikafunny88813 ай бұрын
Так можно же всегда открыть код у Сурена на гите и посмотреть, как там все написано. Я иногда забываю скобки или импорты верно указать, бывает.
@SurenKhorenyan3 ай бұрын
@@vikafunny8881 угу, на гитхабе всё доступно
@eastwesser6 ай бұрын
Спасибо, Сурен! Отличный подарок к моему дню рождения, очень познавательный ролик-резюме по уже существующим роликам на канале 😄
@SurenKhorenyan6 ай бұрын
Круто, пожалуйста! Поздравляю! Рад, что вам понравилось 🥰
@efibutov5 ай бұрын
Классная штука! Спасибо! Сейчас немногчо занят, но определённо хочу послушать - несмотря на имеющийся у меня опыт, тут несомненно будет чему поучиться. Спасибо, Сурен!
@SurenKhorenyan5 ай бұрын
Класс, пожалуйста! Пишите потом как посмотрите 🙂
@efibutov5 ай бұрын
@@SurenKhorenyan Обязательно отпишусь. И снова - спасибо!
@RusSpaceMarine4 ай бұрын
Огромная тебе благодарность, что так много и так доступно все рассказываешь. А за исходники в публичном доступе вообще уважуха 👍 продолжай в том же духе
@SurenKhorenyan4 ай бұрын
Пожалуйста! Очень рад, что вам нравится 🥰
@СРБКолодий13 күн бұрын
Здравствуйте, Сурен! Отличные ролики! Я новичок, но после нескольких просмотров всё становится понятно. У меня совсем начальный вопрос: Как Вы выделяете сразу несколько слов и потом их вставляете и дописываете текст сразу на нескольких строках? В данном видео такой прием есть на 1:32:19 - 1:32:47 .
@SurenKhorenyan13 күн бұрын
Класс, я рад! Это делается через select next occurrence. На маке это cmd + G, на других системах это alt + J
@СРБКолодий13 күн бұрын
@@SurenKhorenyan Благодарю, Сурен!!!
@MAKS199612043 ай бұрын
Огонь! Только добрался посмотреть 💪💪 Мозг немного потёк, но в целом всё понятно и доступно 😅
@SurenKhorenyan3 ай бұрын
Крутяк! Держитесь 😅 Рад, что понятно
@artur.tokranov6 ай бұрын
Спасибо большое!!! Лайк с ходу поставил. Обязательно все буду изучать. Скоро буду делать проект с использованием FastAPI
@SurenKhorenyan6 ай бұрын
Пожалуйста! Круто, удачи!
@TS-ih4xb6 ай бұрын
Сурен, мне нравится, как ты делаешь видео, как спокойно говоришь, контент у тебя топ. лучи поддержки тебе, чтобы не выгорел. было бы неплохо пройтись по Full Stack FastAPI Template, или рассказать про отличие celery и taskiq
@SurenKhorenyan6 ай бұрын
Спасибо! Может быть и пройдусь, закидывайте ссылки и темы в тг чате. А на бусти можно даже поднять приоритет темы 🙂
@ivanalexandrovsky19096 ай бұрын
я только-только эту часть сам дописал вчера 🤣 Спасибо большое за гайд!
@SurenKhorenyan6 ай бұрын
хах. ну вот ролик почти два месяца провисел в монтаже, домонтировали только ночью 😅 Хорошо что вы сами смогли справиться!
@ivanalexandrovsky19096 ай бұрын
@@SurenKhorenyan да я ваш курс только на прошлой неделе начал, два дня назад прошлую серию только проходил))
@SurenKhorenyan6 ай бұрын
удачи в освоении!
@ivanalexandrovsky19096 ай бұрын
@@SurenKhorenyan спасибо 🙏 хорошего вечера 😊
@SurenKhorenyan6 ай бұрын
@@ivanalexandrovsky1909 пожалуйста! и вам хорошего вечера 🥰
@variousxmedia5 ай бұрын
Спасибо за уроки. Было бы интересно еще посмотреть реализацию под всего этого веб страницу тоже с шаблонами и тд., сделать админскую страницу например
@SurenKhorenyan5 ай бұрын
Веб страница это уже совсем про другое. Большой ролик про HTMX есть на канале. Про реактивные фреймворки говорить будем не скоро
@АлексейСубудаев5 ай бұрын
Очень интересно, начал осваивать питон, и как раз из фреймворков выбрал фаст апи. Пока пересматриваю по несколько раз, трудновато. Большое спасибо за ваш труд. Если не сложно, по плейлистам разбейте - посмотрел все видео по фаст апи и неудобно среди общей массы выбирать. И что то с названиями надо делать...было видео 0, потом 1 и 2 и 3, потом цифры пропали просто названия. В дальнейшем планируете развивать проект с фаст апи, какие еще темы в перспективе ?
@SurenKhorenyan5 ай бұрын
Класс! Цифры пропали, потому что там уделили много внимания алхимии. В плейлисте ролики в порядке выхода. Про планы по выходу роликов только на бусти, публично не рассказываю, чтобы не создавать лишних ожиданий
@Legofrend5 ай бұрын
Спасибо за ваши видео! Есть вопрос. В другом курсе по FastAPI сказали, что в проде в реальных проектах FastAPI-users не используют. А что по вашему опыту?
@Legofrend5 ай бұрын
кстати, очень не хватает видео по современным методам аутентификации через сторонние сервисы. Например тот же яндекс. Как на практике создают таблицу users, с какими полями и как туда прокидывают ответы от яндекс API?
@SurenKhorenyan5 ай бұрын
Используют и очень активно. Всё зависит от компании
@SurenKhorenyan5 ай бұрын
@@Legofrendкогда-нибудь будет про OAuth2, но не в ближайшее время. Ускорить можно через бусти 😊
@karasik70156 ай бұрын
Сурен, а не планируешь видео по веб сокетам? или какие дальше планы? )
@SurenKhorenyan6 ай бұрын
Планирую, но будет не скоро. Детали про планы знают бустеры, присоединяйтесь к нашему скромному сообществу ☺️
@IvaNFallout6 ай бұрын
Спасибо, Сурен! Лайк за твое усердие и трудолюбие ✊
@SurenKhorenyan6 ай бұрын
Пожалуйста! Класс, спасибо большое 🥰
@vasopython15475 ай бұрын
Есть вопрос, никак не могу понять что не так, если настраиваю как в видео по бирер токену все работает, но стоит поменять стратегию на куки (изменив транспорт и передав его в ауфбэкенд, плюс убрал хттпоонли, чтоб видеть значение) то все норм работает до момента аутентификации, токен выдает, он есть в базе, вижу его в браузере (сет куки), но при заходе например на /me в свагере, в curl в значении куки -> валидный токен, но он все равно мне отвечает 401, что я упустил никак не могу понять?
@SurenKhorenyan5 ай бұрын
А точно кука уходит в запросе? В телеграм чате можете задать вопрос, обязательно ответим, подскажем
@podjigalgoroda65235 ай бұрын
Сурен, спасибо за видео. Очень важный вопрос, подскажите пожалуйста: я настроил регистрацию и аутентификацию, основываясь на этом видео. После этого прикрутил админку SQL Admin, где аутентификацию нужно реализовать самому. Вопрос такой: можно ли реализовать ее на основе Fastapi-Users или в таком случае нужно настраивать кастомно аутентификацию (ведь Fastapi-Users по сути дает тебе доступ к эндпоинтам, которые уже определены под капотом, а мне в данном случае нужны не они). Сори, если вопрос кажется глупым, но просто хочу понять, в какую сторону мне двигаться!
@SurenKhorenyan5 ай бұрын
Здравствуйте. Да, конечно можно. В чате недавно обсуждали SQLadmin, приходите, может быть вам подскажут
@podjigalgoroda65235 ай бұрын
@@SurenKhorenyan Благодарю
@SurenKhorenyan5 ай бұрын
@@podjigalgoroda6523 рад подсказать ☺️
@dreammanor_ru4 ай бұрын
Привет! Сурен, в связи с последними событиями в Ютубе. Совет как от пользователя Дзен и твоего зрителя, большая просьба к тебе, расставить приоритет по размещению контента на других площадках, отдавай предпочтение к публикации нового материала. Выходят ролики твои новые, а найти их сложно на других площадках. Хотя.... Быть может и я плохо искал))
@SurenKhorenyan4 ай бұрын
Привет! В описании новых роликов, в том числе и этого, буквально первой ссылкой идёт "все мои ресурсы", там все площадки, которые существуют. Проблемный поиск дзена это его точка роста, на это повлиять я не могу. Поэтому переходите по прямой ссылке и смотрите на любой удобной площадке
@Андрей-г2н4т5 ай бұрын
Спасибо за контент, Сурен! Возможно я не разобрался, такой вопрос. Почему у нас в докеркомпоуз файле указаны все пароли и прочее, что мы так усердно прятали в .env и собирали в config.py? Я так понимаю, надо не готовый url в env. указывать а переменные что и в компоуз файле (postgre_user и .т.д) чтобы он их оттуда подтянул, и в конфиг файле в классе DatabaseConfig будут эти же атрибуты, а url будет из них собираться через f-строку
@SurenKhorenyan5 ай бұрын
Пожалуйста! Да, но: - ролик не про настройку БД - в реальном мире мы не запускаем постгрес в докере, это только локально и в CI. в настоящем проекте используется своя развернутая инсталляция, либо managed сервис в рамках облака. так что это просто способ работать с базой локально. точно также и пароль простой ровно по той же причине 🙂
@Emilia-ne2pfАй бұрын
@@SurenKhorenyan так зачем в примере это делать?
@SurenKhorenyanАй бұрын
@@Emilia-ne2pf потому что вы будете тренироваться точно также, локальная разработка такое допускает
@Artem-sz4rc6 ай бұрын
Сурен, ты вроде говорил, что fastapi users уже устарела. Есть ли смысл использовать ее в своих проектах, если можно написать авторизацию самому?(у тебя как раз есть видео про jwt)
@SurenKhorenyan6 ай бұрын
Наверное, вы путаете с fastapi-jwt-auth - вот эта либа действительно устарела. FastAPI-Users активно поддерживается. Смотря что у вас за проект. Авторизацию и всё остальное, конечно, можно сделать и самостоятельно. Тут вопрос готовы ли вы вкладывать в это своё время
@0limjon3 ай бұрын
Спасибо большое за ролик! Было очень полезно.
@SurenKhorenyan3 ай бұрын
Пожалуйста! Рад, что вам понравилось 🥰
@di.n.19066 ай бұрын
Увидел, сразу лайк)) Бабочка огонь :)
@SurenKhorenyan6 ай бұрын
Кайф, спасибо большое!
@igormatveev83556 ай бұрын
Посмотрю позже Но за старание и годный материал лайк + коммент для продвижения видео сейчас(:
@SurenKhorenyan6 ай бұрын
Кайф, спасибо большое! Очень приятно 🥰
@romankarpenko91366 ай бұрын
Сурен, подскажи как ты сделать автозаполнение в терминале? В видео ты вводишь alemic и сразу терминал предлагает reviion и тд
@SurenKhorenyan6 ай бұрын
Это zsh autocomplete, показывал как настроить вот тут: kzbin.info/www/bejne/b6XRqKKsqN6Vjck
@romankarpenko91366 ай бұрын
@@SurenKhorenyan zsh на Linux можно установить?
@SurenKhorenyan6 ай бұрын
@@romankarpenko9136 да, конечно. Я там с zsh и познакомился
@tonyborbozo5 ай бұрын
Добрый день. Ребята я все таки не понимаю про typechecking, может посоветуете статью, что бы на пальцах, для самых маленьких.
@SurenKhorenyan5 ай бұрын
Привет. Если речь про if TYPE_CHECKING то это просто выражение, которое при выполнении кода всегда False, но для аннотаций типов этого достаточно
@tonyborbozo5 ай бұрын
@@SurenKhorenyan спасибо. Уловил суть
@SurenKhorenyan5 ай бұрын
@@tonyborbozo пожалуйста!
@tonyborbozo4 ай бұрын
@@SurenKhorenyan Добрый день, не понимаю принцип построения структуры проекта. По какому принципу распределяются модули по пакетам?
@SurenKhorenyan4 ай бұрын
@@tonyborbozo по своей сути, по задаче
@vikafunny88813 ай бұрын
Спасибо за огромный труд и вклад в будущих разработчиков ❤
@SurenKhorenyan3 ай бұрын
Пожалуйста! Очень рад помогать начинающим, ведь сам когда-то был таким 😊
@ДаниилСоловьев-э6ш6 ай бұрын
Мега хорош! А на реальных проектах часто используют эту библиотеку или пишут что-то кастомное?
@augustsionis65426 ай бұрын
Не используют ее
@SurenKhorenyan6 ай бұрын
Спасибо! Нет, в реальных проектах FastAPI-Users не встречал. В реальных проектах используют отдельный доверенный сервис аутентификации / авторизации
@SurenKhorenyan6 ай бұрын
@@augustsionis6542 ага, тоже не встречал
@_epicfail_80926 ай бұрын
Видео класс. Сурен, как на счет того чтобы записать видео на тему S3 ? Например МинИо
@SurenKhorenyan6 ай бұрын
Привет! Эта тема в планах, но пока не знаю, когда выйдет. Пока что на очереди другая тема, которую заказали бустеры. У вас есть шанс занять следующую позицию 🥰
@lagger0kАй бұрын
Привет! Спасибо за видео. А можно fastapi-users подружить с SSO например на базе Keycloak?
@SurenKhorenyanАй бұрын
Пожалуйста! Наверное можно
@АндрейТарев-т7б5 ай бұрын
А как этим пользоваться в роутерах?
@АндрейТарев-т7б5 ай бұрын
Т.е. как защитить другую информацию, помимо информации о пользователе?
@АндрейТарев-т7б5 ай бұрын
Например, есть сайт с рецептами блюд и пользователь может создать свой рецепт и только этот юзер может внести изменения в свой рецепт
@SurenKhorenyan5 ай бұрын
Показывал это ближе к концу с messages и secrets. Принимаете сущность user и работаете с ней
@АндрейТарев-т7б5 ай бұрын
@@SurenKhorenyan А все, я тупой, спасибо :)
@SurenKhorenyan4 ай бұрын
Всё ок, пожалуйста ☺️
@ufc_uz66 ай бұрын
Спасибо, Сурен❤
@SurenKhorenyan6 ай бұрын
Пожалуйста!
@denk2k6 ай бұрын
🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥
@denk2k6 ай бұрын
Это и про видео, и про бабочку))
@SurenKhorenyan6 ай бұрын
Кайф, спасибо большое 🤩🥰
@karasik70156 ай бұрын
супер, спасибо большое!
@SurenKhorenyan6 ай бұрын
Пожалуйста!
@OlgaGalanina6 ай бұрын
Спасибо
@SurenKhorenyan6 ай бұрын
Пожалуйста!
@artyomklg9156 ай бұрын
на вопрос о библиотеке fastapi-users видео должно занимать не 2 часа а 2 секунды, и надо сказать лишь "Не используйте это, пожалуйста"
@SurenKhorenyan6 ай бұрын
Ахаха 🤣 А почему? Сталкивались уже? Какие сложности были?
@artyomklg9156 ай бұрын
@@SurenKhorenyan честно говоря мне лень всё описывать, если найду сообщение, где я это уже сделал скину сюда. А так можно подчеркнуть: 1) нет рефреша и впихнуть его туда ~= переписать всю аутентификацию проекта, => не имеет смысла 2) Противоречит идеологии микрофреймворка, тк является батарейкой, а нам такое не нужно, идите в джанго с этим 3) Ломает архитектуру проекта, своим юзер-менеджером, готовыми роутерамии кучей глобалов. В большом проекте эта хрень сломает условный ддд 4) Дальше лень
@SurenKhorenyan6 ай бұрын
@@artyomklg915 хорошо, спасибо!
@YuriyPogrebinsky6 ай бұрын
@@artyomklg915а можно предложение альтернативы после столь разгромного описания минусов?