Теги: Теория

Laravel. Валидация данных. Часть первая из трех

Laravel предоставляет несколько способов для валидации входящих данных. По умолчанию базовый контроллер использует трейт ValidatesRequests, который обеспечивает удобный способ валидации HTTP-запросов c большим количеством правил валидации. Рассмотрим простой пример валидации формы и вывод сообщений об ошибках для пользователя.
Категория: Web-разработкаYii2 и Laravel

Laravel. Файловое хранилище

Laravel предоставляет мощную абстракцию для работы с файловой системой благодаря php-пакету Flysystem от Франка де Жонге. Настройки файловой системы находятся в файле config/filesystems.php. В нём можно настроить так называемые «диски». Каждый диск представляет собой определенный драйвер и место хранения.
Категория: Web-разработкаYii2 и Laravel

Laravel. Тестовые данные для БД

Laravel включает в себя механизм наполнения базы данных начальными данными (seeding) с помощью специальных классов. Все такие классы хранятся в директории database/seeds. Они могут иметь любое имя, но лучше придерживаться какой-то логики в их именовании — например, UserTableSeeder, PostTableSeeder и т.д.
Категория: Web-разработкаYii2 и Laravel

Laravel. Миграции базы данных

Миграции — что-то вроде системы контроля версий для базы данных. Они позволяют каждому разработчику в команде изменять структуру БД, в то же время оставаясь в курсе изменений других участников. Для создания новой миграции предназначена Artisan-команда make:migration. Миграция будет помещена в директорию database/migrations…
Категория: Web-разработкаYii2 и Laravel

Yii2. Методы afterSave() и beforeSave()

Как нетрудно догадаться из названия, метод afterSave() модели вызывается после метода save(), который осуществляет сохранение данных в БД. Например, мы хотим записать в сессию сообщение об успешном сохранении записи, чтобы затем вывести это сообщение в шаблоне. В этом случае просто добавляем метод afterSave() в класс модели.
Категория: Web-разработкаYii2 и Laravel

Yii2. Использование сессии

Сессия позволяет сохранять пользовательские данные между запросами. При использовании чистого PHP можно получить доступ к этим данным через глобальную переменную $_SESSION. Yii2 инкапсулирует сессию в объект, что дает возможность обращаться к пользовательским данным в объектно-ориентированном стиле.
Категория: Web-разработкаYii2 и Laravel

Yii2. Постраничная навигация

Для создания постраничной навигации в Yii2 предназначен класс Pagination. Использование данного класса может потребоваться там, где присутствуют большие массивы данных. Это может быть каталог товаров, лента новостей, записи блога и так далее. К примеру, давайте выведем все записи блога…
Категория: Web-разработкаYii2 и Laravel

Yii2. Передача данных в шаблон

Передавая данные через второй параметр метода render(), мы явно передаем данные в view-шаблон. Данные должны быть представлены как ассоциативный массив в виде пар ключ-значение. При рендеринге вида, php вызывает встроенную функцию extract(), чтобы переменные из массива «распаковались» в переменные view-шаблона.
Категория: Web-разработкаYii2 и Laravel

Yii2. Вложенные шаблоны и блоки

Допустим, нам нужно для главной страницы сайта выводить сайдбар, а для других страниц — не выводить. При этом подключение сайдбара нужно сделать в layout-шаблоне, а не в view-шаблоне, чтобы вид отвечал только за вывод контента. В этом случае нет необходимости создавать два идентичных layout-шаблона…
Категория: Web-разработкаYii2 и Laravel

Yii2. Кеширование данных

Кэширование данных заключается в сохранении некоторой переменной PHP в кэше и её последующем извлечении. Оно является основой для расширенных возможностей, таких как кэширование запросов и кэширование страниц. Типичные варианты кэширования и получения данных…
Категория: Web-разработкаYii2 и Laravel
Каталог оборудования
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Производители
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Функциональные группы
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.