#8. Viewsets и ModelViewSet | Уроки по Django REST Framework

  Рет қаралды 43,878

selfedu

selfedu

2 жыл бұрын

Практический курс по Django: stepik.org/a/183363
Заменяем классы представлений одним вьюсетом (viewset) на базе класса ModelViewSet. Прописываем маршруты для вьюсета с помощью класса SimpleRouter. Дополнительно рассматривается класс ReadOnlyModelViewSet и возможность тонкой настройки своего класса вьюсета.
Телеграм-канал: t.me/django_selfedu
Инфо-сайт: proproprogs.ru/django
drfsite-8.zip: github.com/selfedu-rus/rest-f...
Viewsets: www.django-rest-framework.org...
Routers: www.django-rest-framework.org...

Пікірлер: 72
@slmve
@slmve Жыл бұрын
Разработчики DRF просто сверхлюди настолько всё просто и красиво сделать - это нечто!
@eugene_mountainland
@eugene_mountainland Жыл бұрын
Еще через пару видео: смотрите, теперь мы можем эти 3 строчки заменить одним словом и все будет работать))
@axionet_dev
@axionet_dev 5 ай бұрын
🤣🤣🤣🤣🤣🤣🤣🤣
@user-vg7uq9pe5u
@user-vg7uq9pe5u Күн бұрын
Как же круто
@user-dz6et7mf6l
@user-dz6et7mf6l Жыл бұрын
С первого раза больше половины из курса не понял))) Расстроился, но не бросил изучать Rest. Через месяц вернулся и ещё раз пересмотрел курс, столько нового полезного открыл для себя))) Спасибо!
@andrewsevashko6184
@andrewsevashko6184 2 жыл бұрын
Спасибо огромное за Ваш труд. Настолько доступно объяснить материал мало кто может. Планируете ли курс по Fast API, либо по асинхронным фреймворкам?
@user-yz7bl2ie8l
@user-yz7bl2ie8l Жыл бұрын
Спасибо тебе огромное. Очень редко кто может так четко и грамотно все объяснить! Не представляю что бы я без тебя делал!
@bfdhtfyjhjj
@bfdhtfyjhjj 2 жыл бұрын
Самое лучшее объяснение работы ViewSets
@user-wo8py8mk5t
@user-wo8py8mk5t 10 ай бұрын
Отличное качество роликов и подачи материала, курс покрывает очень нужные для разработчика темы. Огромное спасибо вам за ваш труд!
@SQL-Excel-IT
@SQL-Excel-IT Жыл бұрын
Красавчик!!!! 👍 Классно и понятно объясняешь! Этот курс - прямо то что мне нужно на данный момент!
@vladimir-monin
@vladimir-monin Жыл бұрын
Пришел к Вам на канал с платного курса... Всё очень понятно и доступно рассказываете, большое спасибо и всех благ Вам!
@jackieuchiha7838
@jackieuchiha7838 2 жыл бұрын
Дай Бог тебе здоровья, Серега! Самый лучший
@marrr_marrr5315
@marrr_marrr5315 Жыл бұрын
Великолепно! Какой вы крутой.
@Krasnolesye
@Krasnolesye 3 ай бұрын
Разъясняет просто и понятно. Молодца.
@DSAtka
@DSAtka 2 жыл бұрын
Жму руку! Качество материала на высоте.
@zhmeshneck7509
@zhmeshneck7509 Жыл бұрын
Спасибо за объяснение что такое роутеры, я хоть и прочитал документацию но на ваших примерах намного понятнее что они делают
@andrewharazdowskyy4771
@andrewharazdowskyy4771 2 жыл бұрын
Уважаемый Сергей! Интересно и красиво на Вашем уроке поднялся еще на одну ступеньку выше в общении с базой (моделью). Если двигаться последовательно и вдумчиво - становится все легче и интересней. Начал бояться, чтобы после прохождения Вашего курса у меня не появилось желание самостоятельно научиться общаться с базой языком жестов или голосовыми командами.) Спасибо большое!
@exe88cution
@exe88cution 2 жыл бұрын
Ну, всё на высоте и максимально понятно. Спасибо большое!
@user-tb8io7hh4f
@user-tb8io7hh4f Жыл бұрын
Крутое конечно и красивое ООП,спасибо Сергей за еще одно Ваше обьясненние!!
@andreyiskandyrov9548
@andreyiskandyrov9548 2 жыл бұрын
Спасибо за формат подачи материала! Всё по делу.
@newskills-
@newskills- 2 жыл бұрын
Просто супер!!! Очень все логично и понятно! Спасибо!
@deffunction7657
@deffunction7657 2 жыл бұрын
очень крутой курс. спасибо за труд Сергей
@igorkulibaba7287
@igorkulibaba7287 2 жыл бұрын
Спасибо Сергей, понятно, благодаря вам
@user-ov6gw8ku3c
@user-ov6gw8ku3c 2 жыл бұрын
Потрясающе!
@andredru4278
@andredru4278 9 ай бұрын
Спасибо. Отлично всё объяснено.
@meganfox54
@meganfox54 2 жыл бұрын
Отличные уроки
@user-in5ir5jd7u
@user-in5ir5jd7u Жыл бұрын
я заплатил синергии за курс python разработчика 150 тысяч, но по факт 80% этих денег я должен дать тебе Сергей. Благодарю за все твои уроки! Они очень сильно мне помогают
@iam_foreman
@iam_foreman Жыл бұрын
Сергей, спасибо большое!
@sergejg4773
@sergejg4773 Жыл бұрын
Даже непредпологал что такие возможности. Я просто изучаю Питон 2 месяца и в изумлении от функционала и тд. Ну а материал на высоте.
@user-ur9fs8cx4f
@user-ur9fs8cx4f 2 жыл бұрын
Круто! Спасибо!
@meganfox54
@meganfox54 2 жыл бұрын
Доступно понятно спаибо
@user-bi9eb7zs5j
@user-bi9eb7zs5j 2 жыл бұрын
Класные ViewSets!
@meganfox54
@meganfox54 2 жыл бұрын
Супер спасибо
@stayingaliveable
@stayingaliveable 10 ай бұрын
спасибо за видео!!!!
@h_san_korr
@h_san_korr Жыл бұрын
держи мой (царский) 1000-й лайк!) Спасибо за твой контент!
@smokibits4365
@smokibits4365 2 жыл бұрын
Ya hochu ot vas detei 😅, laik i podpiska i koment i kolokolchik)
@meganfox54
@meganfox54 2 жыл бұрын
Спасибо
@ne_zabyc_dadac
@ne_zabyc_dadac 2 жыл бұрын
"Сергей Балакирев - известный программист и преподаватель 21-го века. Его наследие актуально и живо по сей день." Пишу неиронично )) отсылка к предыдущим роликам
@user-ce2vy8lh1j
@user-ce2vy8lh1j Жыл бұрын
Я человек простой, посмотрел урок, поставил лайк, встал из-за стола, подошёл к окну, закурил... Много думал...
@jamjam3337
@jamjam3337 5 ай бұрын
😎
@user-xv7sh6lp7o
@user-xv7sh6lp7o 2 жыл бұрын
🔥
@Anonim-im6ln
@Anonim-im6ln Жыл бұрын
👍👍👍
@ibrahimoglu
@ibrahimoglu 2 жыл бұрын
👍
@mikhailtochenov981
@mikhailtochenov981 2 жыл бұрын
Спасибо вам большое, очень подробные и понятные видео, лично мне очень помогает разобраться. Будет ли идентификация по токенам?
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Да, конечно!
@Septman
@Septman 2 ай бұрын
Здравствуйте, я только начал изучать drf, объясните пожалуйста, если мы допустим используем api для магазина или пр, но мы хотим чтоб информацию например по api запросам могли получать только мы, мы можем ли ограничить внешних пользователей паролем или другим чем-нибудь, чтобы при запросе другие не поулчали наши данные в json формате и не могли просто парсить наши данные, или я чего-то не понял, может для этого не применяется drf, но я не знаю(я всего лишь новичек). Объясните пожалуйста! Еще такой вопрос если у нас допустим есть drf, который может легко обрабатывать запросы и изменять данные, стоит ли нам тогда писать логику в django, если мы можем проще писать в rest? Да и хотелось бы в целом услышать куда стоит углубиться, чтобы лучше понимать как писать логику сайта, а то вроде django знаю, но толком не принять, не отфильтровать и более сложные штуки сделать не могу. Буду очень благодарен за развернутый ответ, да и ребята кто разбирается накиньте мне пару советов и прочих размышлений по моему вопросу. 🙁
@snappesisnappes
@snappesisnappes Жыл бұрын
У меня закономерный вопрос, если у нас URL не по pk а по слагу , то функционал будет работать таким же образом? ну и второй вопрос если мы меняем слаг то что произойдёт? заранее спасибо, очень интересно 🙂
@exe88cution
@exe88cution 2 жыл бұрын
Я же правильно понимаю, если я хочу изменить лигку к примеру получения списка записей, то могу просто в самом классе переопределить метод list?
@naughtyfox9962
@naughtyfox9962 2 жыл бұрын
Здравствуйте. Огромное спасибо за объяснение, смотря ваши видео понимаю, что преисполняюсь в своём сознании)))). Сколько примерно видео будет в данном курсе?
@selfedu_rus
@selfedu_rus 2 жыл бұрын
около 15
@ChrisNasredin
@ChrisNasredin 10 ай бұрын
Для того, чтобы исключить метод из ViewSet можно же переопределить метод в классе WomenViewSet? Например, для того, чтобы запретить удаление, переопределись метод delete(self, pk) и выдавать Response({'error': 'Method not allowed'}), так же можно? Мне кажется этот способ будет более читаемый и компактный, нежели куча миксинов в множественном наследовании?
@MrConnectoid
@MrConnectoid 2 жыл бұрын
Сергей, спасибо за отличный курс по DRF! Подскажите, как сделать такой вывод json данных в браузер?
@selfedu_rus
@selfedu_rus 2 жыл бұрын
там JSON по идее и идет, такое отображение (отладочное) формирует сам DRF, его можно отключить в настройках. Где то я об этом рассказываю.
@user-hq5id2sq3f
@user-hq5id2sq3f 4 ай бұрын
А как сделать запрос так что бы вместо id категории , получать имя категории?
@veahcen
@veahcen 6 ай бұрын
Возник вопрос, при использовании вьюсета или функции представления только для получения одной записи, если queryset = Women.objects.all(), всё равно к БД будет делаться запрос вида Women.objects.all(), т.е. получение всех записей?
@obyeboshen
@obyeboshen 6 ай бұрын
думаю ответ уже найден, но если кого-то интересует, можете глянуть функцию retrieve в базовом классе, там насколько я помню метод get_object возвращает нужный объект через функцию get_object_or_404
@vrgaming3433
@vrgaming3433 2 ай бұрын
А не лучше ли использовать api_view
@TheRunnerSVO
@TheRunnerSVO 2 жыл бұрын
А почему нет кнопочки поддержать канал или какого-то платного обучения? Я бы очень хотел себе такого наставника За видео большое спасибо. Все супер как обычно)
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Спасибо! Видимо у вас не поддерживается спонсорство )
@KrZn104
@KrZn104 10 ай бұрын
Спасибо, очень познавательный контент! У меня вопрос: 8:09 - список, а также форма появились. Но форма почему-то не работает. Новая запись не появляется при заполнение формы. Может я что-то не то делаю, или сериализаторе что-то нужно дописать? Ошибка Got a `TypeError` when calling `Order.objects.create()`. This may be because you have a writable field on the serializer class that is not a valid argument to `Order.objects.create()`. You may need to make the field read-only, or override the OrderSerializer.create() method to handle this correctly.
@selfedu_rus
@selfedu_rus 10 ай бұрын
Спасибо! Напишите этот вопрос в сообщество ТГ-канала по Django (ссылка под видео).
@zakirovio
@zakirovio Жыл бұрын
а для чего определен класс ViewSet, если для создания пользовательский вьюсетов используется GenericViewSet и миксины?
@alower8756
@alower8756 2 жыл бұрын
возможно ли при использование SimpleRouter передать не pk а slugfield? знаю этого делать не стоит но все же интересно)))
@selfedu_rus
@selfedu_rus 2 жыл бұрын
Можно, только вроде через свой роутер. Об этом дальше (о роутерах).
@user-kt2pf5bf5m
@user-kt2pf5bf5m 2 жыл бұрын
в представлении можно указать lookup_field, как любое поле модели, главное, чтобы оно было уникально. А можно вообще переопределить метод get_object(). Там вообще можно расчеты производить и самые неожиданные результаты выводить.
@hovosimonyan799
@hovosimonyan799 2 жыл бұрын
а что на практике часто используют viewsets или generics?
@selfedu_rus
@selfedu_rus 2 жыл бұрын
только в больших проектах, в малых, как правило, ограничиваются представлениями
@maskmask2892
@maskmask2892 Жыл бұрын
Всё делал по инструкции, не понимаю, почему в браузере (внизу, где поля для post-запроса) не отображается is published. В адиминке видно, а в браузере нет.
@genylivnev7822
@genylivnev7822 11 ай бұрын
Возможно потому, что в сериализации в поле fields у вас не указан is_published.
@user-ie3zj8rw5r
@user-ie3zj8rw5r Жыл бұрын
'ModelViewSet' should either include a `queryset` attribute, or override the `get_queryset()` method. не понял как это лечить =(
@tagabenz9808
@tagabenz9808 9 ай бұрын
Как через ValidatedData id передать?
Alat Seru Penolong untuk Mimpi Indah Bayi!
00:31
Let's GLOW! Indonesian
Рет қаралды 15 МЛН
Was ist im Eis versteckt? 🧊 Coole Winter-Gadgets von Amazon
00:37
SMOL German
Рет қаралды 35 МЛН
#8 Django tutorials | GET vs POST | HTTP Methods
6:07
Telusko
Рет қаралды 195 М.
разбор классов ViewSet django rest framework
58:59
Django School | Омельченко Михаил
Рет қаралды 11 М.
Зачем нужны указатели в C++?
8:14
Dima
Рет қаралды 2,7 М.
ViewSet in Django Rest Framework (with Notes)
14:50
TechSunami
Рет қаралды 598
ViewSets in Django Rest Framework and Types #10
13:26
IamPython
Рет қаралды 10 М.