15 Redirect Url в Django. Перенаправление адреса в Django 3

🚀 Add to Chrome – It’s Free - YouTube Summarizer

Category: N/A

Building WordCloud ...

Summary

No summary available.

Transcript

00:00

всем привет с вами егоров артем и сегодня у нас речь пойдет о redirector по-русски это называется перенаправление и при помощи redirect а мы можем сделать перенаправление с 1 июля на другой и это нам позволит решить вот эту проблему смотрите сейчас я обращаюсь по имени

00:17

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

00:32

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

00:48

хотели а именно вот такой для этого давайте сперва удалим вот этот ural я вас создавал для примера в предыдущем уроке также нужно удалить его представление то есть вот эту нашу функцию и

01:03

теперь нам нужно понять как по цифре найти соответствии с названием самого знака зодиака для этого давайте поставим точку снова обратимся по цифре 5 вот мы остановились у нашей функции и

01:19

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

01:34

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

01:49

control и др для выполнения этой команды и вот увидите чему равно значение нашей переменной так вот и словарей есть метод кейс то есть по нему мы получим с вами ключ и нажимаем control интер

02:07

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

02:22

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

02:38

начинается с 0 и мы можем попробовать по этим индексом обратиться и получить название знака зодиака давайте попробуем лев это уже будет не 5 а на единичку меньше потому что мы начинаем с нуля но у нас ошибка возникает в ней говорится что этот

02:55

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

03:12

вот написано и сами индексы и теперь мы к этому объекту обращаемся соответственно по индексу 5 минус 1 ну то есть 4 и получаем льва если мы хотим получить первый знак зодиака вычитаем единичку получаем нолик вот у

03:29

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

03:44

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

04:01

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

04:17

сам словарик вот это для нас важно и и мы этим можем пользоваться в нашем приложении так значит смотрите наши функции вот здесь вот я создаю список зодиак путем преобразования список нашего

04:35

словаря зодиак dict и дальше я получаю имя зодиака путем обращения к нашему списку вот по этому индексу но прежде чем мы

04:50

обращаемся по индексу мы проверяем если число которое приходит нам на вход больше чем длина нашего списка сзади ax и так длина у нас всего здесь 12 знаков соответственно если придет числом больше

05:08

чем 12 там и давайте сообщать при помощи класс http response to not found сообщение что был передан неправильный порядковый номер знака зодиака и здесь укажем сам этот номер так вот если

05:26

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

05:41

импортируем из того же модуля django http класс http response redirect и вот здесь мы уже указываем адрес перенаправление для этого мы должны указать юрий и самой павич давайте

05:58

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

06:14

принципе и все давайте попробуем перезапустить нашу страничку вот мы останавливаемся и так зодиак хранится вот этот список он у нас не больше чем 12 мы получаем имя

06:33

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

06:49

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

07:05

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

07:21

это дел и выполняем его обработку то есть дальше если нажимаю на этот треугольник вот мы работаем уже слева видите путь изменился давайте обращусь к первому первому пути у меня сработало . снова давайте я уберу

07:39

итак первый это овен 2 это через и так далее обращаемся к несуществующему номеру и получаем вот эту ошибку и давайте еще в адресах заодно избавимся

07:55

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

08:13

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

08:31

например если я пишу рыба к этому адресу я еще ни разу не обращался видите сложение так вот если у вас такая же проблема как у меня то есть добавляется автоматически слэш то можете почистить историю я в google и это

08:47

делать не буду просто перейду на новый браузер вот мозиле смотрите и обращаюсь ко льву без слыша и у меня все работает давайте попробуем обратиться к пятерке и вот идет перенаправление обратите внимание слыша в адресе нет и вот так

09:02

при помощи класса а что теперь response redirect вы можете перенаправить любой ваш запрос на любой другой юрин давайте продемонстрируем я могу сюда вставить например юрл моего курса на стыке обновляем страничку 15 у нас возвращает

09:20

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

09:35

оставляйте в комментариях я с радостью на них отвечу ну а я с вами прощаюсь и увидимся в следующем видео всем пока