/e-com-laravel

E-commerce приложение на Laravel, учебный проект

Primary LanguagePHP

Чё плюс минус было интересно/ново/потенциально полезно:

Фильтры товаров

  • Абстрактный класс, который описывает поведение классов которые будут наследовать его - AbstractFilter
  • Классы, которые содержат все данные о фильтрах: тип, имя, логика применения фильтра(билдер), ссылку на view и т.д. - app/Filters. Их же используем для отрисовке на фронте при помощи __toString(). Нэймспейсы с именами храним в базе данных(по идее какие-то еще данные можно хранить в базе и давать редактировать заказчику, надо думать как и что именно туда пихать), а регаем в провайдере, при помощи FilterManager
  • Хелпер src/Support/helpers.php

Order processing pipeline

Thumbnails

  • Эндпоинт(/thumbnails/{dir}/{method}/{size}/{folder}/{file?}), который чекает если уже есть, генерит и отдаёт тамбнэйл - ThumbnailController Конфиг - контроль доступных разрешений.
  • Трэйт, метод makeThumbnail генерит url на наш эндпоинт HasThumbnail

Seeders

  • Расширяет base faker provider FakerImageProvider. Тут дергает картинку из fixtures folder, генерит копию с нужным именем, отдаёт путь, который сейвим в бд

Full text indexing

Seo заголовки

EAV

Casts, одно из решений в работе с админкой:

State pattern