32 SQL и Django ORM. Курс по Django 3

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

Category: N/A

Building WordCloud ...

Summary

No summary available.

Transcript

00:00

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

00:15

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

00:32

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

00:48

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

01:04

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

01:23

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

01:40

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

01:55

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

02:13

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

02:29

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

02:45

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

03:01

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

03:18

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

03:34

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

03:50

добавляем и далее после velis мы перечисляем по позиции то есть аватар идет в поле name 85 идет в рейтинг и соответственно таким образом у нас запись таблички появится инструкция апдейт нам позволяет изменять

04:06

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

04:21

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

04:38

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

04:54

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

05:12

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

05:27

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

05:42

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

05:58

давайте пройдем с вами чуть выше вот теперь мы находимся в папке где хранятся все мои проекты и далее при помощи django админ мы с вами создаем новый проект давайте дам ему название movie project

06:17

итак нажимаю enter проект у нас создался и давайте его откроем для этого выбираем раздел об он идем на диск d вот папка мой project и выбираем movie project нажимаем ok и

06:32

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

06:48

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

07:04

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

07:21

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

07:38

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

07:53

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

08:09

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

08:25

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

08:41

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

08:56

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

09:11

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

09:27

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

09:44

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

10:01

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

10:17

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