Laravel 8 за час | 2021

Поділитися
Вставка
  • Опубліковано 20 вер 2024
  • Всем привет! Долгожданное видео по просьбам многих подписчиков. В нём мы с вами создадим блог на Laravel 8 всего за 1 час.
    Чтобы изучить Laravel вам не нужно покупать дорогие курсы, просто посмотрите данный урок и все азы у вас в кармане. Удачи!
    Репозиторий с исходным кодом проекта, а также версткой - github.com/Vla...
    Буду рад вашему лайку и подписке на мой канал! Обязательно поделись видео с друзьями, это лучше любых донатов.
    Подписка на канал / @vladislavgroniuk

КОМЕНТАРІ • 131

  • @retroteron
    @retroteron 3 роки тому +13

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

  • @aleksandrsh3893
    @aleksandrsh3893 4 місяці тому

    Отличный урок, передает суть (все основное), коротко и ясно, Спасибо.

  • @shewimax851
    @shewimax851 3 роки тому +8

    Привет, Влад! Спасибо за уроки, не останавливайся) Один нюанс в видео в моменте, где объясняешь связи в БД: показываешь один-ко-многим, но говоришь о один-к-одному) Я сначала запутался) Но лайк заслужен)

  • @mystery6032
    @mystery6032 3 роки тому +15

    Никто:
    Абсолютно никито:
    Grapes: Изменим utf8mb4_unicode_ci на utf8_general_ci

  • @newstar8808
    @newstar8808 8 місяців тому

    Спасибо, что вернул видео!

  • @НазарСосновский-д1ф

    Видео супер!) Большое спасибо за урок, в такое трудное время нужно продолжать развиваться 💪🏼

  • @javaa5986
    @javaa5986 3 роки тому +12

    а будет видео с углублением для тех кто уже собирал на Ларавел но для Enterprise проектов не хватает опыта?

  • @cryptohost
    @cryptohost 2 роки тому

    Большое спасибо за такой формат, очень познавательно. Работаю совершенно в другой сфере, но давно уже появилась мечта - своя бд с развитыми фильтрами для работы в виде приложения/сайта. Очень классно объясняешь, даже у новичков появляются базовые понятия взаимодействий в данном фреймфорке.

    • @cryptohost
      @cryptohost Рік тому

      @polak107 окончательно цель еще не достигнута, но базовый крад уже готов полностью. Самое интересное - за это время очень сильно увлек c# и Scala. Думаю даже сменить работу, хотя она полностью устраивает.

  • @ЗолтанХивай-и7ь
    @ЗолтанХивай-и7ь 3 роки тому +1

    Приветствую, Влад! Видео классные, как раз изучаю ларку! Продолжай в том же духе. Главное, что не нудно, а это не все могут.
    Есть просьба. На hh к вакансии вместе с отзывом надо было выполнить задание. Суть: сделать как-бы каталог интернет-магазина с несколькими категориями, а в них ещё вложенные подкатегории товаров. Например, категория телевизоры. В ней, к примеру, несколько подкатегорий: Телевизоры Smart, c поддержкой HDR, с поддержкой 4К, До 40 дюймов, больше 40 дюймов. Также подкатегории могут раскладываться ещё на вложенные подкатегории и тд. Плюс дополнительный заморочь -- нужно у каждой подкатегории показывать цифру, то есть количество товаров внутри. В общем 3 - 5 этажей подкатегорий, к тому же чтобы каждая категория-подкатегория была ссылкой.
    Нашёл 4 или 5 способов хранить деревья категорий в базе данных. У каждого свои плюсы и минусы. Делал ли ты подобные вещи? Если делал -- сделай, пожалуйста, видео на эту тему. Думаю новичкам вроде меня будет полезно.
    Спасибо за видео!

  • @newstar8808
    @newstar8808 2 роки тому

    Спасибо, Влад. Отличное видео! Простым понятным языком - молодец, отличная база! ⭐⭐⭐⭐⭐

  • @СергейАмпилов-я3н

    С большим удовольствием посмотрел ролик, благодарю господина Влада

  • @ИгнатПарасеонов
    @ИгнатПарасеонов 2 роки тому

    Спасибо, Влад! Отличное видео: просто, понятно и по делу! Супер! ⭐⭐⭐⭐⭐

  • @trycatcher4136
    @trycatcher4136 3 роки тому +1

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

  • @Nell1a
    @Nell1a 2 роки тому +1

    Отличный урок, большое спасибо!

  • @seoonlyRU
    @seoonlyRU 2 роки тому +1

    вау вау вау))) респект за видео от сеошника-вебмастера СЕООНЛИ

  • @cylbps
    @cylbps 2 роки тому

    Респектую! Сделать выжимку из огромной документации и изложить самое необходимое для старта простым языком, удается не всем.

  • @sl614
    @sl614 3 роки тому +4

    Хорошо объясняешь! возможно не знаете что заголовок можно сразу писать в @extends вторым аргументом
    @extends('layouts.main', ['title' => 'название'])
    в шаблоне уже будет так
    {{ $title }}

  • @alekseevich_psk
    @alekseevich_psk 3 роки тому +1

    Обычно не доверяю видео с инфой "Что-то за 1 час". Тут прям не ожидал) Очень понравилось. Спасибо автору. Можно конечно еще доработать было основные вещи, но будем считать это домашним заданием)
    Единственное, стоит признать, что контент не совсем для новичков.
    Без знания php, MVC, и принципа работы любого шаблонизатора php лучше не смотреть. Рановато)

    • @_sonne_
      @_sonne_ 2 роки тому +1

      Без знания PHP вообще нет смысла смотреть в сторону Laravel)

  • @Hackerloopkz
    @Hackerloopkz 7 місяців тому

    Спасибо ! четко

  • @АлександрЛихолетов-ы9ч

    Классное видео) Просто, понятно и без воды. Обязательно поделюсь с друзьями, которые только начинают изучать Laravel.

  • @dimalepel
    @dimalepel 2 роки тому +3

    Очень нравятся Ваши видео. Хочу спросить: могли бы Вы показать Ваши актуальные проекты на Laravel для реальных клиентов, если можно. Заранее благодарен.

  • @ДенисРоднов-ж4щ
    @ДенисРоднов-ж4щ 2 роки тому

    спасибо!

  • @Mr.Capone-
    @Mr.Capone- 3 роки тому +1

    начал смотреть видеокурс от webformyself "Laravel. Полное руководство", а тут это видео. Пожалуй сначала его посмотрю)

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому +3

      Webformyself - к сожалению худшие курсы которые я встречал, много воды и лишнего( смотри все кроме них

    • @welldone8294
      @welldone8294 3 роки тому

      У них есть курс свежий но платный(кто хочет и так найдет), прошлого года вроде, вот он интересный, посмотрел с удовольствием как новичок. По сути всё есть в документации:-)

    • @digitalturkistan1857
      @digitalturkistan1857 3 роки тому +2

      @@VladislavGroniuk почему мне нравится я изучаю по их курсам только ларавел 7

    • @artem_ib
      @artem_ib 2 роки тому

      Смотрел их курс о ларе, вполне отличный, у них много интересных курсов, не согласен, кто критикует.

  • @romanpodkorytov
    @romanpodkorytov 2 роки тому

    Отличный урок, спасибо

  • @elbert2991
    @elbert2991 2 роки тому

    Спасибо за урок! 😀😀😀

  • @AlvarCrash
    @AlvarCrash 3 роки тому +3

    Спасибо! То что надо, кратко и по делу!

  • @gridgum
    @gridgum 3 роки тому

    Спасибо огромное то что нужно-было

  • @metr1x114
    @metr1x114 2 роки тому

    Спасибо за отличный урок

  • @Masuraodesu
    @Masuraodesu 3 роки тому

    Спасибо, Влад!

  • @metalhead-mh1864
    @metalhead-mh1864 2 роки тому

    thanks for your work!

  • @МихаилПетровичЗубенко-р9в

    Пусть здесь будет ещё один комментарий благодарности :)

  • @peterpopov9597
    @peterpopov9597 3 роки тому

    varchar 255 максимальное количество символов при использовании MySQL? вообще-то максимальное количество символов зависит от выбраной кодировки, но в современных версиях MySQL оно точно не 255.
    Из документации MySQL:
    Эффективная максимальная длина VARCHAR в MySQL 5.0.3 и более поздних версиях при условии максимального размера строки (65 535 байт, которая распределяется между все столбцы) и используемый набор символов. Например, символы utf8 может потребоваться до трех байтов на символ, поэтому столбец VARCHAR, который используется набор символов utf8, который может быть объявлен как максимум 21 844 символы.

  • @11-april
    @11-april 3 роки тому

    Спасибо за урок

  • @tit_777
    @tit_777 3 роки тому +1

    Спасибо за работу! Получил удовольствие от изучения видео

  • @ВладиславСергеевич-п6ж

    Сделайте урок по Laravel + nuxt (в разных папках) с использованием laravel passport. Регистрацию, авторизацию, выход из профиля. Области действия токета, чтобы для админа был доступ к админке, и роли. Сделайте пожалуйста, для новичков будет очень полезно.

    • @dashkablogger
      @dashkablogger 3 роки тому

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

  • @sevaske
    @sevaske 2 роки тому

    Принято модели в единственном числе называть, а не наоборот. Моделька User, как пример, из коробки. В модельке можно даже название таблицы не указывать и лара будет искать таблицу users, если моделька User

  • @ИгорьВиткин-ь8я
    @ИгорьВиткин-ь8я 3 роки тому

    Отличное видео.

  • @atubavalgalla9092
    @atubavalgalla9092 3 роки тому

    Спасибо!

  • @иванжук-ц2н
    @иванжук-ц2н 3 роки тому +1

    Будем ждать новых

  • @MyBikeLife
    @MyBikeLife 3 роки тому +2

    про самое главное забыли. with('category') иначе столько запросов к БД будет, что мама не горюй. По мне новичков надо сразу к порядку приучать.

    • @atlanticocean8606
      @atlanticocean8606 3 роки тому

      В контролере? $categories = Category::with('posts')->orderBy('title')->get();

    • @atlanticocean8606
      @atlanticocean8606 3 роки тому +1

      With
      Применяется для жадной загрузки. То есть вместе с самой моделью Laravel загружает и связанные данные. Это полезно, если у вас есть коллекция моделей и для каждой вы хотите загрузить связанные данные. При жадной загрузке будет выполнен только один дополнительный запрос к базе данных.
      Пример User > hasMany > Post:
      $users = User::with('posts')->get();
      foreach($users as $user){
      $users->posts; // посты уже загружены, нет запроса в каждой итерации цикла
      }

  • @_x_play2356
    @_x_play2356 2 роки тому

    Хороший урок

  • @maruf4ik
    @maruf4ik 3 роки тому +2

    ПРИВЕТ Влад ты можешь снять видеоурок про настройки WebStorm-a плагины Laravel и д.р у тебя все пути use namespace генерируется автоматический я пытался установить некоторые плагины и снипеты но нет такого результата как у тебя

  • @JonasReyes
    @JonasReyes 3 роки тому

    Gracias amigo!

  • @АлександрСоболев-ф8р

    все отлично тока вопрос. Почему выбрал связь один к одному. У категории же может быть несколько постов.?

  • @KlinovAS
    @KlinovAS 11 місяців тому

    Большое спасибо за обзор Ларавел. Я сильно разочарован этим фреймворком и не стану его учить не смотря на то, что он так востребован. Есть некоторое сходство с Джанго, но в общем это направление не туда и переделать (улучшить) уже ничего не получится. Я пользуюсь на много удобным синтаксизом в шаблоне и с точки зрения парсера он не напрягается так сильно как сдесь с @if(), @else, @... У меня код подсвечивается лучше (понятней), встраивается как родной html. На много легче и сам движок в разы проще, соответственно и быстрее и понятней даже начинающим с авторизацией, с кешированием, каталогами, постами, поиском, фильтрами и без милион деклараций на все случаи жизни. Инсталяция и оновления пишется в install.php, update.php и не нужно никаких миграций. Все просто и на чистом MySQL, который на много понятней чем запоминать для каждого фреймворка всякую дичь

  • @АнтонСурыгин-ф9ж
    @АнтонСурыгин-ф9ж 2 роки тому

    Привет 👋 классно объясняешь. Вроде получается повторять. Но вот застрял на определенном моменте. Когда создавал обратную связь. После этого из бд достаётся только из таблицы к которой сделали связь. Не пойму почему (

  • @иванжук-ц2н
    @иванжук-ц2н 3 роки тому

    Ждем новых курсов про ларавел

  • @Shoutaim92
    @Shoutaim92 3 роки тому

    Спасибо за урок. Без лишней воды👍🏻

  • @JohnJohnsonX
    @JohnJohnsonX 2 роки тому

    "Дескриптион" пишешь... а я еще "лангуаже" юзаю)))

  • @ddrdeveloper
    @ddrdeveloper 3 роки тому +2

    57:05 с этого момента у совсем непонятно "прямое взаимодействие", "обратное" - что к чему? что за взаимодействие? Тут я и потерялся, дальше уже все стало совсем непонятно.

    • @nesterovskiy
      @nesterovskiy 2 роки тому

      Мне тоже не понятно на этом моменте. Я так и не понял, как быть, если у меня табличка называется не category, а по другому, например cat_projects?

    • @ddrdeveloper
      @ddrdeveloper 2 роки тому +1

      @@nesterovskiy На самом деле, лучше почитать документацию, там все понятно.

  • @rebus1985
    @rebus1985 3 роки тому

    🔥

  • @Jerald6940
    @Jerald6940 Рік тому

    У меня не хочет Ларавел ставится через Композер. Нельзя ли его где-то просто скачать?

  • @larush4orl
    @larush4orl 2 роки тому

    парень старается, это похвально. НО добивает музыка и неуверенность автора. Ошибки/говорки можно было вырезать а не показывать. Дерзайте дальше !

  • @vie8411
    @vie8411 2 роки тому

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

  • @sergejsjersovs9011
    @sergejsjersovs9011 3 роки тому

    Доброго дня Влад ,спасибо огромное за кроки ! У меня вопрос , и в этом уроке и в уроках об адмнике все работает , но после редиректов не подключает скрипты ,на главной странице всё отображается корректно и красиво ,а если например на страницу категории или поста всё выводится но без css и script. В чем разница у тебя работает а у меня нет ? Пробовал и по уроку повторять , и из репозитория скачал что бы проверить, результат один и тот же .

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому

      Перед путем к скрипту ставь /, или подклбчай скрипты или стили с посощью функции public_path, если я не ошибся в названии

  • @serb1697
    @serb1697 3 роки тому

    У меня почему-то не работают стили и js, подключил через "/css/bootstrap.min.css" не помогло, ещё подключал через " {{ asset('/css/bootstrap.min.css') }} " и тоже не помогло.

  • @luckyklaxon
    @luckyklaxon 2 роки тому

    "Вью, сокращённо вьюхи" 🤔

  • @jackalrus1
    @jackalrus1 3 роки тому +1

    Я правильно понял что ресурсные контроллеры в основном используются для админ панелей?

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому

      Нет, не всегда) для админ панели в том числе)

  • @andriimaksymchuk8773
    @andriimaksymchuk8773 2 роки тому

    ого та ти Українець! красава!

  • @StivBike
    @StivBike 3 роки тому +1

    Docker и ни каких проблем с установкой зависимостей

  • @glebsemenov6782
    @glebsemenov6782 2 роки тому

    Привет! Я php джун. Собираю закрытый чатик для начинающих php разработчиков. Будем нетворкаться, учить новые штуки вместе и мотивировать друг друга. Пиши свой тг в комменты.

  • @FrozenSky-z5v
    @FrozenSky-z5v 3 роки тому

    Привет. Спасибо за видео. Я в laravel новичок, создавать простой блог умею, но есть миллион вопросов... например, касательно смены языка на сайте, удобного создания меню, как это реализовано в админке WordPress или крутой загрузке картинок. Я сам очень люблю Laravel, в прошлом я разработчик WP и у меня миллион вопросов о том, как на ларе делать такие же вещи как и на WP
    PS: разве последний курс по Laracel от Webformyself плохой? Я только начал смотреть - вроде нормальный.

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому

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

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому

      Первое что нужно понять, что ларавел - это не вп) на ларавеле обычно такие виды сайтов как вп не делают( визитки и лендинги напоимер) на ларе больше делаю икомерс проекты, и если говорить о том же меню то это просто табличка в базе данных с названием пунктов и с поле родительского пункта) чтобы сделать похожий конструктор меню как в вп, то нужно использовать drag and drop, а на беке просто все записывать в бд) может что-то не понятно объяснил, но к сожалению
      В одном комментарии у меня не хватит времени все расписать по полочкам) удачи в изучении)

    • @FrozenSky-z5v
      @FrozenSky-z5v 3 роки тому

      @@VladislavGroniuk Спасибо за открытый ответ! очень ценю это. Да, ларавель это не ВП. Я понимаю, это разные инструменты и задачи у них также разные.

    • @FrozenSky-z5v
      @FrozenSky-z5v 3 роки тому

      Я бы очень хотел увидеть реализацию очень сложного интернет магазина на ларе. Что-то очень очень сложное. Магазин в котором много товаров, есть смена валюты, смена языка. В админке графики и прочие вещи для лучшего понимания того, как идет бизнес. Более того, у меня клиенты спрашивали, а смогу ли я прикрутить к магазину на ларе 1С. Я вообще без понятия, можно ли это сделать, как это делать и делают ли это вообще.

    • @FrozenSky-z5v
      @FrozenSky-z5v 3 роки тому

      Многие интересуются о crm на laravel, также хотел бы узнать об этом подробнее.
      Один мой клиент готов был отвалить несколько штук долларов за качественный магазин, но лару я еще не знаю, поэтому отказался. В итоге он запустил магазин на битрексе. И вот еще вопрос: можно ли на ларе сделать магазин, который не будет уступать магазину на битрексе, а будет даже лучше? То есть, работать будет быстрее и включать в себя все функции, о которых просит клиент для успешного введения бизнеса?

  • @moviesenglish7753
    @moviesenglish7753 2 роки тому +1

    0.5% От Laravel в этом видео

  • @bohdan9197
    @bohdan9197 3 роки тому

    Я скорее всего тупой, но объясните пожалуйста как изменять заголовок и название страницы в зависимости от выбранной категории?

  • @maruf4ik
    @maruf4ik 3 роки тому +3

    урок супер) без музыки было бы лучше

  • @АлексейАзорабеков

    Очень много воды, чуть не уснул может стоит поменять формат, но лайк за старания...

  • @darkcherdak5715
    @darkcherdak5715 3 роки тому

    Автор, а получается базу данных нужно отдельно где-то запускать чтобы к ней Ларавел приконектиться? Она не имеется "в коробке" с Ларавелом?

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому

      Она есть в xamp, я им пользуюсь)

    • @darkcherdak5715
      @darkcherdak5715 3 роки тому

      @@VladislavGroniuk аа, вот оно чё) Теперь понятно. А через Sail/Docker случайно не приходилось запускать Laravel?

  • @jonsmith9748
    @jonsmith9748 3 роки тому

    Смотрите на скорости 1.25/1.5

  • @plutuss
    @plutuss 3 роки тому +1

    Наполнение фабрикой не проще?

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому

      Можно и фабрикой) Дело вкуса и привычки)

  • @ryantodd6733
    @ryantodd6733 3 роки тому

    Не пойму как на 1:22:12 он вставил описание если удалил его?

  • @ohjelmistokehittaja4446
    @ohjelmistokehittaja4446 2 роки тому

    Времени нет. На скорости х2 получится за полчаса?

    • @alvor777
      @alvor777 2 роки тому

      В 45 мин уложится можно, на х2. Но если пойти на сайт, то получится за 30 минут, а результат будет лучше и знаний будет побольше.

  • @TonyCooper69
    @TonyCooper69 3 роки тому

    MAMP есть на виндоус тоже) Юзаю его на 10тке.

    • @mugen31337
      @mugen31337 3 роки тому

      Зачем? Есть же докер? Ну на крайняк open server

  • @soversus5374
    @soversus5374 2 роки тому

    Код в шаблоне? 😀

  • @maruf4ik
    @maruf4ik 3 роки тому

    в бд имя таблицы ты задал categories но в модели ты написал category?

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому +1

      Да) модель указываеться в единственном числе согласно правилам англ. языка

    • @maruf4ik
      @maruf4ik 3 роки тому

      @@VladislavGroniuk понятно спасибо

    • @alvor777
      @alvor777 2 роки тому +1

      @@VladislavGroniuk и снова авторская дичь... с каких пор, правила англ. яз. распространяются на программирование? А модель - это по сути сущность, а сущность у нас в единственном числе.
      Категории - таблица, а сущность - категория
      Посты - таблица, а сущность - пост

  • @lokidismas7442
    @lokidismas7442 2 роки тому +1

    ​Ржака не могу, сейчас усцусь. Работая с такой архитектурой захочется застрелиться. Laravel как фреймворк терпим, но нужно много чего допиливать. Автору нужно дать в темной подворотне лопатой по хребтине. Все кто использует ORM для работы с базой данных должны гореть в аду. Тяжело синтаксис SQL один раз выучить вместо этого буду использовать кривые абстракции.

  • @viktoryakovenko757
    @viktoryakovenko757 3 роки тому +1

    Ну и зачем тебе UTF8 вместо UTF8mb4 ?

  • @alcoholic_monk
    @alcoholic_monk 3 роки тому

    когда ставишь ларавел на комп, запускается майнер.

    • @kasa3172
      @kasa3172 2 роки тому

      Правда? Факты есть? Если реально, то нх он мне не нужен!

    • @alcoholic_monk
      @alcoholic_monk 2 роки тому +1

      @@kasa3172 Шутка)

    • @kasa3172
      @kasa3172 2 роки тому

      @@alcoholic_monk )))

  • @obuchenie505
    @obuchenie505 2 роки тому +2

    после первого часа нифига не понятно

    • @alvor777
      @alvor777 2 роки тому

      Зря потраченное время, а во всём виновато не знание автора.

    • @nesterovskiy
      @nesterovskiy 2 роки тому

      Мне тоже. У меня таблички, контроллеры и модели называются по другому, я совсем запутался и не понял как вывести категории.

    • @alvor777
      @alvor777 2 роки тому

      @@nesterovskiy опиши что есть и что хочешь с этим сделать

  • @ylhamchakanov6885
    @ylhamchakanov6885 3 роки тому

    githabe нет верстка. просто готовый код laravel. нет смысла смотрет на ваш видео без верстки мы не можем повторить то что вы делаете. вы как професиональный программист должен это знать

    • @cat-on-motorcycle
      @cat-on-motorcycle 3 роки тому +2

      Там есть вёрстка в отдельной папке

  • @andriimaksymchuk8773
    @andriimaksymchuk8773 2 роки тому

    Можно уже Вільно переходити на мову і робити озвучку правильно!

  • @Алексей-г7ь5ы
    @Алексей-г7ь5ы Рік тому

    Бла,бла,бла... это хавает пипла))))

  • @SeargeB
    @SeargeB 3 роки тому

    Гарно, але навіщо російською //_-

    • @VladislavGroniuk
      @VladislavGroniuk  3 роки тому +3

      Тому що російську більше людей розуміють)

    • @SeargeB
      @SeargeB 3 роки тому

      @@VladislavGroniuk англійську ще більше (-:
      А от українських уроків мало, можна було б збільшити перегляди тільки тому, що рідною.

  • @СултанБакиров-п6ъ
    @СултанБакиров-п6ъ 3 роки тому +1

    Отличный урок. Большое спасибо!