No video

Реализация RESTFul API на Django REST Framework

  Рет қаралды 95,342

loftblog

loftblog

Күн бұрын

⬇План вебинара:
🔹Что такое Restful Api, как его проектировать, зачем он нужен, какие проблемы решает.
🔹Какие основные принципы нужно знать для реализации.
🔹Где используется и с помощью каких технологий его можно реализовать.
🔹Зачем был сделан DRF, какие плюсы и минусы.
🔹Изучим основы работы с Django REST Framework, на примере создания записей в базе данных для конкретных пользователей, а так же получения данных из бд. Реализуем авторизацию и регистрацию используя стороннюю библиотеку, а так же поработаем с доступами. Узнаем как внутри устроен DRF. Используем Postman и встроенный веб интерфейс для отправки и получения данных.
🔹Роад мап - что можно улучшить, на что стоит обратить внимание, что можно внедрить и что делать самому после вебинара.
👨‍💻 Ведущий: Дмитрий Анисов

Пікірлер: 137
@MrYoklmn
@MrYoklmn 4 жыл бұрын
Я в восторге! Хочется посмотреть на комбинацию джанги и vue в грамотном исполнении)
@atomicfuture1865
@atomicfuture1865 2 жыл бұрын
Видео очень тихое.Чтобы увеличить звук в ютубе откройте панель разработчика Mac( CMD + Option + J) или на Windows (f12) і вставьте в поле после такого знака ">" этот код: var videoElement = document.querySelector("video") var audioCtx = new AudioContext() var source = audioCtx.createMediaElementSource(videoElement) var gainNode = audioCtx.createGain() gainNode.gain.value = 3 source.connect(gainNode) gainNode.connect(audioCtx.destination) Чтобы сделать еще громче используйте эту строку: gainNode.gain.value = 4.Вместо 4 можете подставить любое значение и станет громче с коэффициентом в виде этого числа. А так видео крутое, спасибо!
@alvares2729
@alvares2729 2 жыл бұрын
Самый лучший вебинар по DRF, к. я смотрел за последние пару месяцев🦾 ТОП‼ Хотелось бы увидеть вебинар по совмещению Докеров и DRF🙂
@user-nd8qn8od2g
@user-nd8qn8od2g 5 жыл бұрын
Спасибо большое за видео! Очень понравилось такое детальное описание того как всё работает внутри не только самого фреймворка, а в целом, что куда и зачем, и было потрачено время на это, так как это важно. Мне как начинающему, очень понравилось то что рассказывалось всё подробно и с ответвлениями, а не галопом по Европе, где был бы открыт код и просто говорилось, это нужно для этого и всё, а было детально объяснено, а главное рассказывалось очень доступным языком именно для новичков, за что отдельное спасибо! Жду следующих видео!)
@Overlap_ed
@Overlap_ed 3 жыл бұрын
Присоединяюсь к вышеизложенному!
@asreal8633
@asreal8633 3 жыл бұрын
Попытался почитать документацию не хватило знаний терминов, а вы обьясняете довольно хорошо, спасибо большое!)
@kelevra1493
@kelevra1493 5 жыл бұрын
Спасибо, Дядь за лекцию! Очень помогла.
@ural-site
@ural-site 5 жыл бұрын
Огромное спасибо за видео! Особенно за теорию и подготовительные шаги!
@user-lh4ul8qb3m
@user-lh4ul8qb3m 4 жыл бұрын
Спасибо большое, уже не страшно открывать документацию по django-rest-framawork)
@Trotskyst
@Trotskyst 5 жыл бұрын
Большое спасибо за видео!!! Очень хотелось бы увидеть, как дальше обработать то, что DRF отправил на фронт, при помощи VueJS
@wolterbilenko
@wolterbilenko 3 жыл бұрын
Надеюсь спустя год вопрос отпал, но для тех кто будет это читать - vue к джанго не относится, он просто запрашивает данные, иначе это был бы уже урок по vue а не по DRF
@wordpreslabs
@wordpreslabs 5 жыл бұрын
Ничего не понятно, но ооочень интересно (с)
@DES2048
@DES2048 5 жыл бұрын
Спасибо, как entry point в drf очень зашло!
@ryengard
@ryengard 5 жыл бұрын
Очень информативная и продуманная лекция. Подписка и ожидание таких же вкуснях.
@elendiar2116
@elendiar2116 4 жыл бұрын
Спасибо за отличный вебинар!
@user-fs9gp6oz8x
@user-fs9gp6oz8x 3 жыл бұрын
Очень классный вебинар! Спасибо за труд!
@user-jp9qe6vy3p
@user-jp9qe6vy3p 4 жыл бұрын
после этого вебинара я подписался :) спасибо огромное!
@user-mi3yb7mj7j
@user-mi3yb7mj7j 3 жыл бұрын
А мне не показал это видео и посоветовал индусов...
@ural-site
@ural-site 5 жыл бұрын
Про вью + дрф, хочу сказать, по вью много материала, я уже научился писать несложные приложения, но по дрф материвла очень мало, просмотрев данный урок я уже смело смогу сделать полноценный простой сервис
@andrewmendela9065
@andrewmendela9065 5 жыл бұрын
уйма материала по дрф у зарубежных каналов. Да и если вдумчиво проработать документацию на офф. сайте дрф, то все понятно станет. /watch?v=82i3hqrhGBw /watch?v=Hcyo-jS4FXw&list=PLF-NY6ldwAWrLxZ52QfXKS3TW97aY8DSQ /watch?v=lHh6aDRpIx4 /watch?v=X367yDYmogo /watch?v=4W8ZJPPNn9k /watch?v=RG_Y7lIDXPM /watch?v=uZgRbnIsgrA /watch?v=Uyei2iDA4Hs Тут хоть и боильшинство видосов по реакту, но джанге тоже большое внимание уделяется
@domioedition
@domioedition 4 жыл бұрын
Спасибо! Было очень интересно!
@SergeyMenshov
@SergeyMenshov 3 жыл бұрын
Большое спасибо! Очень много полезной информации о DRF.
@HeyArtem
@HeyArtem 2 жыл бұрын
Спасибо за ваш труд!
@antonsachuk615
@antonsachuk615 3 жыл бұрын
Спасибо большое! очень полезный вебинар!
@Vladyslav-lv4bi
@Vladyslav-lv4bi 5 жыл бұрын
Спасибо большое! Все доступно и по теме!
@chatikchar3462
@chatikchar3462 3 жыл бұрын
Спасибо за урок, но со звуком полная беда!
@megaShvil
@megaShvil Жыл бұрын
Огромное спасибо!
@marinaurrey5246
@marinaurrey5246 3 жыл бұрын
Спасибо за интересный вебинар). Узнала много полезного.
@bulatsamigullin4639
@bulatsamigullin4639 5 жыл бұрын
Спасибо за лекцию!
@googleadmin4749
@googleadmin4749 3 жыл бұрын
Ctrl + D = Слоздать копию строки (он часто делает это на видео) я вчера узнал случайно нажав))
@RajPolinovsky
@RajPolinovsky 5 жыл бұрын
Пример актуален при установки этих пакетов: djangorestframework 3.7.7 djoser 1.1.5
@kutmanshirinbekov8096
@kutmanshirinbekov8096 4 жыл бұрын
спасибо огромное !
@current1710
@current1710 4 жыл бұрын
Автор красавец!
@sardorabduroxmonov
@sardorabduroxmonov 2 жыл бұрын
Спасибо
@Overlap_ed
@Overlap_ed 3 жыл бұрын
Спасибо!!!
@Nothing10569
@Nothing10569 2 жыл бұрын
Подписка, больше таких лекций!
@MrSvent0vit
@MrSvent0vit 4 жыл бұрын
Звук полная жесть. Почти ничего не слышно, выкручиваешь громкость на полную, а потом ведущий вебинара стучит по микрофону! Уши пожалейте!
@x-neimi4493
@x-neimi4493 4 жыл бұрын
Эти хлопки - звук из консоли ubuntu
@privetabdul
@privetabdul 3 жыл бұрын
он потом отключил сис звуки
@neofit3157
@neofit3157 4 жыл бұрын
хороший материал, очень, быстро но содержательно, я не работал в рест джанго, только в джанго натив, чтобы окунуться как раз вебинар хорош, подскажите еще материалы от Дмитрия Анисова по питону - понравился его стиль.
@neymanen
@neymanen 3 жыл бұрын
1:06:00 Пытаюсь запустить, консоль ругается на: line 21, in path('api/v1/cars/', include('cars.urls')) И на line 3, in from views import * ModuleNotFoundError: No module named 'views' Не могу понять что не так, спасите-памагите
@neymanen
@neymanen 3 жыл бұрын
Импорты надо везде поменять по типу: from . import views Синтаксис что ли изменился...
@nikitaavrinsky9192
@nikitaavrinsky9192 4 жыл бұрын
Спасибо, очень познавательно и по делу. ЗЫ Вешайте плз лимитер или компрессор на микрофон, а то чуть кровь из ужей не пошла, когда вы его задевали.
@Polite_person_
@Polite_person_ 4 жыл бұрын
мож сразу мастеринг сделать?=)
@nikitaavrinsky9192
@nikitaavrinsky9192 4 жыл бұрын
@@Polite_person_ а это идея! Займётесь?
@SudoAptReboot512
@SudoAptReboot512 Жыл бұрын
1:33:25 Да это считаеться плохой и реализацией с плохой масштабируемостью правильно реализовывать логику в сервисах и как многие рекомендуют реализовывать так же и все запросы в бд так же в сервисах но по этой теме достаточно мало информации
@sublimelolka4669
@sublimelolka4669 Жыл бұрын
Всё здорово, но голос очень тихий.
@user-tw9rp7cv5y
@user-tw9rp7cv5y 5 жыл бұрын
ТОП!
@viktorbukarev2371
@viktorbukarev2371 3 жыл бұрын
Интересная тема. А подскажите, как правильно тестировать API из вашего примера через Postman ?
@user-rc3ry6dp2n
@user-rc3ry6dp2n 2 жыл бұрын
Друзья, в каком плейлисте находится это видео?)
@MrDaosss
@MrDaosss 5 жыл бұрын
Привет. Спасибо большое за урок! Есть вопрос. Почему библиотека djoser выводит только это { "users": "127.0.0.1:8000/api/v1/auth/users/" } когда я захожу по адресу 127.0.0.1:8000/api/v1/auth/ ?
@oleksandrberezhnyi3864
@oleksandrberezhnyi3864 5 жыл бұрын
Такая же проблема(
@animalbtw9153
@animalbtw9153 5 жыл бұрын
+
@user-th1rx9xv5b
@user-th1rx9xv5b 5 жыл бұрын
+
@oleksandrberezhnyi3864
@oleksandrberezhnyi3864 5 жыл бұрын
Крч джосер просто обновил свою версию там теперь по другому принципу работа
@xakslim
@xakslim 5 жыл бұрын
@@oleksandrberezhnyi3864 и как теперь создавать новых пользователей?
@kelevra1493
@kelevra1493 5 жыл бұрын
Почему по урлу api/v1/auth/, не показываются методы djoser? А только { "users": "127.0.0.1:8000/api/v1/auth/users/" } update: в новой версии djoser много вырезали. Нужно понизить.
@user-ie3dc3nc8l
@user-ie3dc3nc8l 4 жыл бұрын
Аналогично
@user-pe8gm3zs2r
@user-pe8gm3zs2r 3 жыл бұрын
Привет, ты решил данную проблему?
@KnowingCat
@KnowingCat 4 жыл бұрын
Как залогиниться через сторонний фронт, а не через вебку реста или форму джанго?
@iBotMan
@iBotMan 3 жыл бұрын
пример через postman - это и есть через сторонний софт.
@yar8519
@yar8519 Жыл бұрын
блин вот нигде не могу найти информацию, правильно ли понимаю что в дрф при групповом создании объектов, например не один а лист если кидаю и хочу что бы создалось много объектов например в том числе подчиненных, то дрф бежит циклом по всем строкам и в каждой строке при этом делает дофига запросов, чтобы подтянуть вложенные элементы и создать новый? если да то это же дьявольски неудобно и счет переходит на тысячи обращений к базе данных? это же дичь, не так ли? и как это можно изменить, типа некий bulk create чтобы обеспечить, спасибо
@andrewmendela9065
@andrewmendela9065 5 жыл бұрын
UPD: Видимо сам DRF сломался, потому что такая ошибка вылетает только при установке последней версии(3.9). Если поставить 3.8, то все работает. На 2:03:15 выкидает вот такое: AttributeError at /api/v1/auth/ 'OrderedDict' object has no attribute 'register' Последний вызов произошел вот тут: /home/jurgeon/.local/lib/python3.6/site-packages/rest_framework/compat.py in md_filter_add_syntax_highlight md.preprocessors.register(CodeBlockPreprocessor(), 'highlight', 40) что это?
@TheRouqs
@TheRouqs 3 жыл бұрын
Как сложить или вычесть два вводимых числа на django rest? Я пробовал в сериалайзере писать логику из if и else но максимум дошёл только до того что получаю не вводимые данные,а названия строк(
@xlebyshek9055
@xlebyshek9055 4 жыл бұрын
Добрый день. 1:20:04 подскажите. как настроить фильтр, чтоб он показывал только записи залогиненого пользователя?
@xcast6576
@xcast6576 3 жыл бұрын
Как хранить массив в БД? Например первое поле это номер вопроса, а второе это правильные ответы (их может быть несколько)
@darikaki647
@darikaki647 3 жыл бұрын
Вы можете сделать новую таблицу и туда по id привязать к номеру!
@RusFarFaz
@RusFarFaz 2 жыл бұрын
Это видео часть какого-то курса? Где я могу посмотреть этот курс?
@kelevra1493
@kelevra1493 4 жыл бұрын
Почему запрос приходит на View, а не на Endpoint (Url)? 22:10
@darikaki647
@darikaki647 3 жыл бұрын
Кстати это команда touch нет в винде зато есть в bash гита!
@russab0
@russab0 4 жыл бұрын
Swagger сейчас не поддерживает GET запросы с телом
@jailyssneust2189
@jailyssneust2189 Жыл бұрын
Это Django Rest Framefork или RestFullApi?
@AlexandrWD
@AlexandrWD 2 жыл бұрын
На сколько быстрый в сравнении с php?
@olegssh6452
@olegssh6452 3 жыл бұрын
Я бы отнёс к плюсу то что DRF коды ошибок отдаёт так как положено через http статусы. Иначе это создаёт избыточность информации
@dailyvideo1593
@dailyvideo1593 Жыл бұрын
+
@dailyvideo1593
@dailyvideo1593 Жыл бұрын
Слышу)
@MikhailVoroncov
@MikhailVoroncov Жыл бұрын
легенда
@alexsemikolenov815
@alexsemikolenov815 2 жыл бұрын
Звук очень тихий
@elmarizmailov
@elmarizmailov Жыл бұрын
57:00
@gustaugutter9477
@gustaugutter9477 5 жыл бұрын
'CarCreateView' should either include a `queryset` attribute, or override the `get_queryset()` method на первом же этапе запоролся, в чем может быть проблема?
@talgatabdraimov9033
@talgatabdraimov9033 5 жыл бұрын
определи поле queryset. типа queryset = ModelName.objects.all()
@gustaugutter9477
@gustaugutter9477 5 жыл бұрын
@@talgatabdraimov9033 а почему автор этого не делает и у него все работает?
@philipvasilevski3994
@philipvasilevski3994 5 жыл бұрын
@@gustaugutter9477 Он импортировал из .models модель Car , а потом уже обратился к Car.objects.all(), здесь . указывает текущую директорию если тебе необходимо импортнуть модель из другого приложения , то ты должен указывать from название_приложения.models import Имя_класса_модели
@gustaugutter9477
@gustaugutter9477 5 жыл бұрын
@@philipvasilevski3994 это то при чем тут вообще?) Вопрос про то, почему у меня вылезла ошибка на отсутствие определенного атрибута queryset, а у автора и без этооо атрибута все завелось.
@vvservvvserv5773
@vvservvvserv5773 4 жыл бұрын
@@gustaugutter9477 Ctrl+F5 тебе в помощь.
@qa337
@qa337 5 жыл бұрын
На скорости 1.5 норм.
@toleubekrauan2958
@toleubekrauan2958 4 жыл бұрын
1.75
@calmius24
@calmius24 11 ай бұрын
А чего так тихо то?)
@user-vx6zk5jj4e
@user-vx6zk5jj4e 3 жыл бұрын
Пожалуйста послушай в гугл переводчике как произносятся 100 самых популярных слов в программировании, например delete и retrieve.
@asreal8633
@asreal8633 3 жыл бұрын
ахахаахах ору еще с "джЕйсон"
@user-uo7ko7ej9x
@user-uo7ko7ej9x 2 жыл бұрын
Правильно он произносит, так и надо
@user-uo7ko7ej9x
@user-uo7ko7ej9x 2 жыл бұрын
Я про джЕйсон
@saubolsh
@saubolsh 3 жыл бұрын
21:28 Запрос через различжж мучижж ы нашелся там...
@ilyachudakov7944
@ilyachudakov7944 2 жыл бұрын
Полезная информация, однако много действительно непрактичной воды: понятно, к примеру, что работа различных методов это просто уровень соглашения, но, в общем случа, при использовании стандартных штук кодовая база уменьшается в разы. А потом посмотрел и автор явно противоречит сам себе в некоторых высказываниях.
@MrSelsh
@MrSelsh 4 жыл бұрын
Можно ссылку на исходник?
@user-gn8tp2vp5q
@user-gn8tp2vp5q 4 жыл бұрын
Озвучивайте, пожалуйста, вопросы от аудитории. Непонятно на что отвечаете.
@Dmitriy-kh
@Dmitriy-kh 2 жыл бұрын
Смотрю в наушниках не слышно нихера, нахрена такой звук делать? Навалить можно только на акустике
@michaelscarn7375
@michaelscarn7375 4 жыл бұрын
В следующий раз как вариант можете вырезать кофе брейк из трансляции
@Zyablik.00l
@Zyablik.00l 4 жыл бұрын
Здравствуйте! Ответьте кто нибудь пожалуйста я новичок в этом. Для рест апи обязательно использовать Джанго рест фреймворк или достаточно просто джанго? Везде обучение только про Джанго рест фреймворк
@sergeykapshuchenko5695
@sergeykapshuchenko5695 4 жыл бұрын
Очень хороший вебинар, но одно но Если видео рассчитано на джанго рест,то не надо много моментов объяснять с обычного джанго,всё-таки это не для начинающих в джанго видео Лично мое мнение
@mariaponomarenko3006
@mariaponomarenko3006 3 жыл бұрын
1:53:20
@heisenberg6874
@heisenberg6874 2 жыл бұрын
ужас с накрученными комментами
@dandee3877
@dandee3877 4 жыл бұрын
mkvirtualenv: команда не найдена
@usercommon1
@usercommon1 4 жыл бұрын
Как сложно смотреть на код, который не можешь написать...
@archieruin6875
@archieruin6875 4 жыл бұрын
Тут выход один. Хочеться но не можешь - пиши код. Любой код. Жаде если он говно! В итоге ты прокачаешся в этом.
@user-hr9wr7ok2q
@user-hr9wr7ok2q 5 жыл бұрын
Есть сокращённая версия
@dronovdmitry
@dronovdmitry 4 жыл бұрын
1) 19:55 "джанго не даёт код ошибки" - а какие фреймфорки вы знаете которые код ошибки дают? 2) 1:54:24 - а как быть если объект не имеет атрибута "user" ? prnt.sc/qo31q8 - prnt.sc/qo31yi
@x-neimi4493
@x-neimi4493 4 жыл бұрын
Чуть колонки не лопнули от этого звука ошибки ввода в консоли
@s1lentgrave
@s1lentgrave 4 жыл бұрын
а я в наушниках был)
@RuchejAlex
@RuchejAlex 4 жыл бұрын
Если бы я был новичком, т.е. вообще не запускал джанго, то я бы ничего не понял и у меня ничего бы не получилось. Не старайтесь охватить всю аудиторию. Для новичков есть отдкльные уроки, в которых понятно объясняют, что такое джанго. Ваша задача объяснить, что такое API.
@user-sv4fu3ik3c
@user-sv4fu3ik3c 5 жыл бұрын
ну нереально много воды, все что тут показали, можно было за 20 минут рассказать и это с учетом теории
@agentdaun5699
@agentdaun5699 5 жыл бұрын
Какой есть ещё нормальный урок? Шарю и в питоне и в джанге, но рест ещё не изучал.
@user-sv4fu3ik3c
@user-sv4fu3ik3c 5 жыл бұрын
@@agentdaun5699 kzbin.info/aero/PLEsfXFp6DpzTOcOVdZF-th7BS_GYGguAS
@user-sv4fu3ik3c
@user-sv4fu3ik3c 5 жыл бұрын
@@agentdaun5699 мне этот зашел
@user-vk9vg6yb9b
@user-vk9vg6yb9b 4 жыл бұрын
Микрофон купите нормальный Противно слушать с шумами
@newssina
@newssina 4 жыл бұрын
Мне одному показалось что в принципе написание веб приложения на питоне это костыли? Я считаю что развитие должно быть в сторону облегчения а не усложнения, php в этом плане оптимальное решение. Поскольку php в разы проще, а django не упрощается значит ни когда питон не будет популярен в веб.
@s1lentgrave
@s1lentgrave 4 жыл бұрын
django ведь мощнее
@newssina
@newssina 4 жыл бұрын
​@@s1lentgrave ни чуть, ASP мощнее. Но для 99% проектов, php мощности за глаза. По поводу мощности могу ошибаться конечно, не было возможности проверить самостоятельно, тут скорее в предпочтении
@s1lentgrave
@s1lentgrave 4 жыл бұрын
@@newssina зато проекты со сложностью выше средней на django легче делать)
@alexeydanilov1557
@alexeydanilov1557 3 жыл бұрын
Смотря что и для каких задач применять. Работаю и с тем, и с тем. Мой вывод - для быстродействия(API) - PHP - Laravel\Lumen etc , для сайтов, которые нужно сделать быстро, но хорошо - PYTHON - Django
@paul_wiggin
@paul_wiggin 4 жыл бұрын
видео в 720р в 2019 году... жесть.
@alekkovalik3070
@alekkovalik3070 5 жыл бұрын
sublime круче и быстрее
@linust5892
@linust5892 5 жыл бұрын
Если ты пайчарм под себя настроишь, будет наоборот))
@junkmonkey8809
@junkmonkey8809 4 жыл бұрын
Тайминг слабо сделать, кому нужно пусть слушает болтовню
@MrKatachresis
@MrKatachresis 4 жыл бұрын
Спасибо за полезный вебинар!
@driewtonmai
@driewtonmai 4 жыл бұрын
+
@itx2878
@itx2878 5 жыл бұрын
+
Prank vs Prank #shorts
00:28
Mr DegrEE
Рет қаралды 13 МЛН
Or is Harriet Quinn good? #cosplay#joker #Harriet Quinn
00:20
佐助与鸣人
Рет қаралды 46 МЛН
Мы сделали гигантские сухарики!  #большаяеда
00:44
Just Give me my Money!
00:18
GL Show Russian
Рет қаралды 974 М.
Заменил Своего Кота Роботом за 3000$
21:27
TheBrianMaps
Рет қаралды 1 МЛН
Запрос к внешнему сервису // Backend
15:37
Идемпотентный запрос // Backend Go
16:05
loftblog
Рет қаралды 4,5 М.
Prank vs Prank #shorts
00:28
Mr DegrEE
Рет қаралды 13 МЛН