#9. Роутеры: SimpleRouter и DefaultRouter | Уроки по Django REST Framework

  Рет қаралды 38,882

selfedu

selfedu

2 жыл бұрын

Практический курс по Django: stepik.org/a/183363
Рассматриваются классы SimpleRouter и DefaultRouter для создания роутеров и связывания их с вьюсетами. Декоратор @action для формирования дополнительных маршрутов. Метод get_queryset() для управления выборкой записей. Создание собственного класса роутера (custom router).
Телеграм-канал: t.me/django_selfedu
Инфо-сайт: proproprogs.ru/django
drfsite-9.zip: github.com/selfedu-rus/rest-f...
Роутеры: www.django-rest-framework.org...

Пікірлер: 61
@kartman8880
@kartman8880 Жыл бұрын
15:57 вот она двоечка от Балакирева
@HackSolveHub
@HackSolveHub 28 күн бұрын
Топ курс спасибо большое!!
@artyomvakhrushev850
@artyomvakhrushev850 Жыл бұрын
У тебя очень полезные уроки, которые я пересматривая не по одному разу, сделай пожалуйста плейлист с уроками по FastApi !
@glebboyko8256
@glebboyko8256 2 жыл бұрын
Спасибо автору канала за курсы! Во многом благодаря ему получилось устроиться на позицию python junior developer! (Пока только оплачиваемая стажировка на 600$/месяц) Хотел бы дать несколько советов (да-да, только утроился а уже советы раздаю) перед собеседованием узнайте про docker это обязательно и очень сильно повысит ваши шансы, так же советовал бы помимо rest api, fast api, sql (стандартный набор) знать хотя бы немного в разделе безопасности (у самого всплыла такая проблема во время собеседования), а именно: sql-инъекции, permission, общие ведомости про протоколы (http) будет достаточно. Автору, да и всем подобным каналам ещё раз спасибо, благое дело делаете ради камьюнити программистов! (Отдельное спасибо автору именно этого канала за подробные разъяснения работы и увеличения абстрактности кода, это правильный подход (во всех направлениях программирования)!
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Классно! Дальнейших успехов!
@kra1dex
@kra1dex Жыл бұрын
Как успехи?
@zeinmusic3649
@zeinmusic3649 11 ай бұрын
как успехи?)
@ne_zabyc_dadac
@ne_zabyc_dadac 2 жыл бұрын
Что-то невероятное по глубине погружения в материал и простоте обьяснения
@user-qc1ue9dm7u
@user-qc1ue9dm7u 2 жыл бұрын
Спасибо за Ваш труд) объясняете очень круто!
@thebalu9804
@thebalu9804 2 жыл бұрын
Огромное спасибо вам за ваш труд.
@user-xw3km1bv5o
@user-xw3km1bv5o 6 ай бұрын
Огромнейшее спасибо! По прошлому курсу по Django задеплоил свой сайт - даже работает))) сейчас прохожу DRF. Аккуратнее и деликатнее объяснения еще не встречал!
@parshiviyrogsalad469
@parshiviyrogsalad469 2 жыл бұрын
Огромная вам благодарность за труд, большая часть моих знаний базируется на ваших уроках, вот сейчас изучаю курс(Django REST Framework) и параллельно повторяю курс по ООП, в свободное время практикую полученные знания при написании собственного сайта. Планирую с июля взяться за поиск работы, как раз закончу 3 курс технической специальности, та и надеюсь к тому времени мы и забудем, что такое воздушная тревога и тп. Отдельная благодарность за видео с опытом трудоустройства ваших учеников, очень вдохновляющее видео. Всем мирного неба и успехов в изучении программирования!)))
@user-bi4vs4rb1n
@user-bi4vs4rb1n Жыл бұрын
Ну как с работой?
@user-vg4go2sv5i
@user-vg4go2sv5i 2 жыл бұрын
Классные уроки! Спасибо. А будет продолжение?
@user-tb8io7hh4f
@user-tb8io7hh4f Жыл бұрын
Кратко и лаконично!!!Круто ,спасибо,Сергей!
@devline9218
@devline9218 2 жыл бұрын
Чтобы работало со слешем в дефолтном роуте нужно добавить trailing_slash *url=r'^{prefix}{trailing_slash}$'*
@alexturner6417
@alexturner6417 7 ай бұрын
Информативно, просто и понятно. Спасибо большое!
@andredru4278
@andredru4278 10 ай бұрын
Спасибо. Все понятно и доступно рассказано.
@pungushe
@pungushe 2 жыл бұрын
Классно объяснение . Спасибо
@meganfox54
@meganfox54 2 жыл бұрын
Лучшие уроки!
@igorkulibaba7287
@igorkulibaba7287 2 жыл бұрын
Все интереснее и интереснее
@user-vh8pu5sn4e
@user-vh8pu5sn4e Жыл бұрын
Спасибо за материал!!!
@iam_foreman
@iam_foreman Жыл бұрын
Сергей, спасибо большое!
@usernoname-wv6of
@usernoname-wv6of Жыл бұрын
Как всегда все по полочкам с ссылками на документацию. Сергей, а Вы не планируете сделать курс по конкурентному программированию и параллелизму в пайтон? Было бы очень интересно именно Ваш курс на эту тематику увидеть
@deniskov9366
@deniskov9366 2 жыл бұрын
Спасибо Вам огромное.
@beribanyu
@beribanyu 2 жыл бұрын
Сергей, Добрый день. С превеликим удовольствием смотрю ваши уроки) Подскажите пожалуйста, а вы не планируйте снять серию уроков по фреймворку KivyMD? А то на русском языке очень мало, а английский еще только учу) У вас просто отличная подача материала, поэтому учить с вами приятно и легко. Спасибо!
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Спасибо! Пока нет, машинное обучение на очереди.
@user-ls1ee6rv9w
@user-ls1ee6rv9w 2 жыл бұрын
@@selfedu_rus это круто) ждём!
@jamjam3337
@jamjam3337 5 ай бұрын
😎
@meganfox54
@meganfox54 2 жыл бұрын
Круто!
@Celestia_C
@Celestia_C 4 ай бұрын
Спасибо большое!
@hovosimonyan799
@hovosimonyan799 2 жыл бұрын
Спасибо.
@meganfox54
@meganfox54 2 жыл бұрын
Спасибо!
@krasnokutsky-denis
@krasnokutsky-denis Жыл бұрын
спасибо большое
@dailyvideo1593
@dailyvideo1593 Жыл бұрын
Жаль нельзя лайк ставить несколько раз)
@bulik1384
@bulik1384 5 ай бұрын
как отфильтровать queryset например по категориям? получить не Women.objects.all() а Women.objects.filter(category=category)
@Anonim-im6ln
@Anonim-im6ln Жыл бұрын
👍👍👍👍👍
@user-xv7sh6lp7o
@user-xv7sh6lp7o 2 жыл бұрын
👍
@romanbush5164
@romanbush5164 10 ай бұрын
спасибо Сергей, а как delеte метод сделать не рассказал) нужно перейти к конкректной записи /1 и там будут методы PUT и DELETE
@yusupsharafutdinov3681
@yusupsharafutdinov3681 Жыл бұрын
Подскажите, как раскрывать классы и смотреть из чего он состоит? в VS code
@andrewharazdowskyy4771
@andrewharazdowskyy4771 2 жыл бұрын
Уважаемый Сергей! Спасибо большое за урок! Интересно, лаконично и емко, поэтому разбираю в прямом смысле по словам. Подскажите, пожалуйста, мне как недоучке по ООП - при переопределении get_queryset() - в качестве self мы рассматриваем экземпляр класса router? Насколько "имею представление" про ООП - если есть self - тогда можно вызвать метод из экземпляра класса или мне лучше посмотреть какой-то урок из ООП? .)
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Здесь экземпляр создается автоматически самим DRF и вызывается. Все что нам нужно - это правильно описать класс с нужным набором атрибутов и методов.
@andrewharazdowskyy4771
@andrewharazdowskyy4771 2 жыл бұрын
​@@selfedu_rus Сергей! Спасибо за ответ. Вот именно в этом месте пригодились Ваши уроки по ООП - распечатал в консоль dict этого экземпляра - pk действительно на месте ) Хотя немного загрустил, что не знаю как воспользоваться остальными локальными свойствами - видать еще мало жил!
@nomadicus77
@nomadicus77 Жыл бұрын
Ответьте на вопрос буду благодарен. Суть action понятен, а смысл его использования на практике? Без него не получится вывести модель категории в модели women?
@jonny185
@jonny185 Жыл бұрын
Если я правильно понял, роутеры автоматически создают маршруты по префиксу и вьюсету? Ну то есть вместо того, чтобы ручками прописывать path('префикс', имя класса/функции, name='имя маршрута'), мы пишем routet.register(r'префикс', вьюсет) и благодаря этому маршруты регаются автоматом? Подскажите пж чайнику) И почему когда мы брали одну категорию, то pk мы пишем перед category, а не после?
@val___7868
@val___7868 Жыл бұрын
вот тоже интересно, неудобная фигня, как-нибудь сделать бы после чтобы писать
@val___7868
@val___7868 Жыл бұрын
при кастомном роутере не формируются маршруты категорий, которые ввели декоратором action, почему?
@kneel6815
@kneel6815 2 жыл бұрын
Привет, а подскажи, что за программу ты используешь для рисования на экране? (1:14)
@selfedu_rus
@selfedu_rus 2 жыл бұрын
EpicPen
@user-yu7vi7dc9r
@user-yu7vi7dc9r 2 жыл бұрын
Сергей, доброго времени суток! Спасибо большое за ваш труд! Хотелось бы узнать: сколько планируется видео в этом курсе?
@kneel6815
@kneel6815 2 жыл бұрын
Я думаю, что он берёт документацию, переводит, переделывает всё на свой манер (очень даже классный) и рассказывает нам. Скорее всего все возможности REST покажет нам, а дальше свободное плавание
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Не без этого + опыт разработки ))
@alishersoliyev7513
@alishersoliyev7513 2 жыл бұрын
Просто супер👍. Огромное спасибо за ваш труд). У меня возникло небольшой вопрос, а как взять конкретные данные в определенном промежутке времени?
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Спасибо! Это лучше в сообществе телеграм-канала спросите )
@user-kt2pf5bf5m
@user-kt2pf5bf5m 2 жыл бұрын
Когда я убрал queryset и определил только метод get_queryset, как у вас, я пытаюсь искать конкретные записи в БД, у меня не возникает ошибки. Пишет, что запись не найдена. Скорее всего у меня более новая версия drf. Интересно другое! Когда я возвращаю в методе такое выражение Women.objects.filter(category_id=1), при запросе конкретной записи все работает отлично, а когда выражение Women.objects.all()[:3], записи программа уже не находит, хотя в обоих примерах нужная запись есть в возвращаемом QuerySet. Странная механика
@vitalip2293
@vitalip2293 2 жыл бұрын
Такая же проблема
@meganfox54
@meganfox54 2 жыл бұрын
Более подробно в идеале не видел
@gogelgans4240
@gogelgans4240 10 ай бұрын
Вимен😂
@user-et6cl3th9y
@user-et6cl3th9y Жыл бұрын
​ @selfedu Столкнулся с такой проблемой: restframework переопределяет маршруты в методе get_absolute_url() модели, в итоге по ссылке в шаблоне {{ note.key }} я перехожу не на страницу приложения с детализацией 'myapp_detail/1/', а на страницу api '/api/v1/myapp/1/', как с этим бороться?
@user-et6cl3th9y
@user-et6cl3th9y Жыл бұрын
Нашел решение данной проблемы: суть была в том, что restframework в router.urls формировал маршрут с именем name-detail которое совпадало с именем аналогичного маршрута для приложения. Решением стало задание в параметре basename при регистрации роутера имени слегка отличающегося от имени в приложении
@ibrahimoglu
@ibrahimoglu 2 жыл бұрын
👍
100❤️
00:19
MY💝No War🤝
Рет қаралды 23 МЛН
ОСКАР vs БАДАБУМЧИК БОЙ!  УВЕЗЛИ на СКОРОЙ!
13:45
Бадабумчик
Рет қаралды 6 МЛН
Django API Authentication using JWT Tokens
37:06
Scalable Scripts
Рет қаралды 173 М.
ООП в JavaScript. Классы, свойства, методы
29:02
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 74 М.
Django DRF Project | Implementing DRF Router | 17
15:52
Very Academy
Рет қаралды 7 М.
How To Make a Django REST API - Full Tutorial & Deployment
40:18
Tech With Tim
Рет қаралды 64 М.