Теги: Yii2
29.09.2019
При редактировании с помощью WYSIWYG-редактора страницы сайта может возникнуть необходимость загрузки изображений, так что установим файловый менеджер ELFinder. Кроме того, создадим отдельную страницу 404 Not Found для панели управления, потому что сейчас используется страница 404 общедоступной части сайта, что не очень удобно.
22.09.2019
Сейчас для показа всех страниц в панели управления используется класс ActiveDataProvider и виджет GridView. Нам это не подходит, потому что страницы надо показывать с учетом иерархии. По аналогии с категориями каталога изменим метод контроллера actionIndex() и view-шаблон index.php.
18.09.2019
Код для работы со страницами уже работает, но нуждается в некоторой доработке. Нужно предоставить возможность выбора родителя для страницы, прикрутить WYSIWYG-редактор, добавить валидатор для slug, изменить надписи на кнопках и так далее. Все это мы уже делали для товаров, категорий и брендов, так что без подробностей.
17.09.2019
Перед удалением категории нужно выполнить две проверки. Первая — что категория не содержит товары. Вторая — что категория не имеет дочерних категорий. Если хотя бы одно условие ложно, категорию удалять нельзя. Добавим метод beforeDelete() в класс модели Category. И добавим аналогичную проверку перед удалением бренда.
14.09.2019
Добавим загрузку и ресайз изображений для категорий и брендов. Здесь все по аналогии с загрузкой и ресайзом изображений для товаров. Посколько мы это уже делали, нет смысла все подробно описывать. Так что только исходные коды контроллеров, моделей и view-шаблонов с формой.
11.09.2019
Теперь займемся формой для добавления и редактирования товара. Установим расширение CKEditor, чтобы добавить WYSIWYG-редактор для удобной работы с описанием товара. И организуем загрузку картинки товара с использованием класса yii\web\UploadedFile. Начнем с установки расширения CKEditor через Composer.
10.09.2019
Сейчас для действия index контроллера ProductController показывается список всех товаров каталога. Найти в этом длинном списке нужный товар, чтобы его отредактировать, довольно проблематично. Давайте на страницу списка всех категорий добавим еще одну ссылку, которая позволит просмотреть список товаров каждой категории.
08.09.2019
Продолжим работу по приведению в порядок кода, который для нас сформировал Gii. В первую очередь займемся созданием выпадающего списка для выбора родителя при создании и редактировании категории или товара. Для этого добавим в класс модели Category два метода, которые будут возвращать список всех категорий в упорядоченном виде.
02.09.2019
Создадим с помощью генератора кода классы модели, контроллера (для CRUD-операций) и файлы view-шаблонов для брендов. Все по аналогии с категориями и товарами каталога. Подробно на этом останавливаться не будем, потому что проделывали это уже несколько раз. И займемся приведением в порядок кода, который сформировал для нас Gii.
01.09.2019
Хорошо, с заказами закончили, теперь займемся каталогом. Воспользуемся генератором кода Gii, чтобы создать модели категорий и товаров каталога. После чего с помощью все того же генератора кода создадим контроллеры и представления для реализации функционала просмотра, создания, редактирования и удаления категорий и товаров.