Динамические поддомены через middleware в Laravel. Для тех, кто не знал

Урок посвящен реализации динамических поддоменов в виде различных городов на живом проекте с использованием middleware. Если Вы об этом не знали - видео будет полезно! #поддомены#laravel#cutcode --------------------------------------------------------------------------------- ❗️❗️❗️как делать сложные сайты на laravel? Это просто с cutcode! Поддерживай мой проект - ❗️❗️❗️Присоединяйся к нашему комьюнити в телеграм - там и советом помогут и много интересного - Угостить меня кофе - 🤖🤖🤖Мой помощник Тэйлор готов выдать тебе подарок. Забирать тут - --------------------------------------------------------------------------------- ⏰ Таймкоды: 00:00 Введение и постановка задачи 00:42 Стандартный вариант реализации 01:33 Реализация при помощи middleware Всех поклонников Laravel я приветствую на канале Cutcode! Сегодня у нас снова рубрика для тех, кто не знал в которой я буду давать небольшие советы, либо демонстрировать фичи из мира Laravel и livewire и так далее. Кто-то мог а них не знать, а кому-то они даже надеюсь пригодятся - не забудьте об этом поделиться в комментариях, и обязательно прожать лайк! Я буду крайне благодарен. Сегодня я продемонстрирую реализацию динамических поддоменов в виде различных городов на живом проекте. Но не стандартным подходом, а с использованием мидлвара думаю будет интересно - погнали. Итак друзья давайте начнем с изначальной задачей проекта - а это реализация динамических поддоменов в виде городов. Изначально это будут не все города и они будут постепенно добавляться. Плюс город Москва будет городом по-умолчанию и будет доступен даже в отсутствии поддомена. Классическая реализация бы выглядело следующим образом: но поскольку есть также Москва доступная без поддомена, то необходимо было бы параметр город сделать вместе с точкой, убрать отсюда, добавить сюда и плюс сделать в целом этот параметр не обязательным, либо продублировать эту конструкцию и здесь уже реализовать без поддомена. А далее уже работать с логикой - если такой город в базе и доступен ли он. И мне в голову пришла более простая схема реализации с использованием middleware, которую мы сейчас с вами рассмотрим. И если у вас есть более интересные решения, то обязательно напишите об этом. Ну или если видите явные недостатки текущего решения тоже пишите, мне будет крайне интересно. Итак, друзья как видите моя реализация динамических поддоменов целиком и полностью ложится на плечи middlewar. Для тех кто не знает что такое middlewar, попытаюсь по простому объяснить - middlewar это скажем так середина пути запроса, где мы решаем что делать с этим запросом - либо пропускать далее, либо нет, либо как-то модифицировать, что у нас и происходит. В нашем middleware city это класс isset city здесь у нас заключена простая логика - мы берем все города из таблицы city из кэша - давайте посмотрим: здесь мы просто кэшируем всем записи из таблицы, чтобы каждый раз не пулять запрос к базе в случае если у нас добавляются города либо удаляются, там этот кэш обновляем, чтобы у нас всегда были актуальные данные. Далее возвращаясь к Middlewar у нас следующая логика - у нас если есть поддомен, то мы делаем проверку, если такой город. Если нет выдаем 404 ошибку, а если есть, то к параметрам запросов добавляем текущей город и далее уже даём добро на этот запрос. --------------------------------------------------------------------------------- 📹 делитесь этим видео с друзьями: 🔔 подпишитесь на YouTube-канал: 📼 Курс по Laravel с нуля: Реализация динамических поддоменов на Laravel. Для тех, кто не знал --------------------------------------------------------------------------------- 🔗 наш сайт: 📷 наш instagram: 📱 Наш telegram-канал:
Back to Top