Skip to content

AnatolyAG/laravel_pet_project

Repository files navigation

Старт проекта

Используя

  • make install
  • make build
  • make start
  • шаг 6

Следуя инструкции ниже

1. Клонировать проект в папку

  • git clone https://github.com/AnatolyAG/laravel_pet_project.git
  • Для windows - если долго выполняються запросы то папку надо клонировать в раздел wsl2 и
  • проверить настройку docker desktop для корректной интеграции.

2. Поднять докер

  • docker-compose up -d --build

    Если ошибка сборки php сервиса

    • docker-compose build php
    • docker-compose up -d

3. Зайти в контейнер

  • docker exec -it laravel_base bash

Команды выполняемые в контейнере млм через docker-compose php

4. Установить зависимости

  • composer install

5. Создать все таблицы и заполнить тестовыми данными

  • php artisan migrate:fresh --seed

6. Импортировать в постман файл:

  • RESTful API Finance.postman_collection.json

7. В постмане в начале в папке Auth

выполнить любой из запросов
  • админ для получения админ токена
  • оператор для получения токена оператора
  • юзер для получения токена юзера
  • после этого можно выполнять различные запросы согласно спецификации ниже
Если ошибка с правами на запись лог файлов
  • chmode -R 777 /var/www/laravel/storage/

Проект доступен по адресу

Проверить или запустился без ошибок - стандартный вывод ларавел

Точка входа апи

Описание по заданию

++ RESTful API на Laravel под фронт системы учета денежных операций (для аутентификации Sanctum): ++1. Модели (User, Role, Transaction) - наполнение минимальное, опираясь на логику. ++2. Связи (Role-User - many2many, Transaction-User - many2one) ++3. Endpoints: ++3.1. CRUD для User ++3.2. CRUD для Role ++3.3. CRUD для Transaction ++4. Авторизация (использование Policies): ++4.1. Role могут создавать, изменять и удалять только пользователи с ролью admin ++4.2. User могут создавать, изменять только пользователи с ролью operator, а удалять только admin ++4.3. Transaction могут создавать, изменять и удалять только пользователи с ролью operator. ++5. Примеры запросов для каждого Endpoint в Postman.

++6. Кеширование листинга транзакций в Redis. ++ 6.1 Кэш для Transaction,User на запрос всех и сброс кеша при создании изменниии удалении транзакции

++7. Использование Events (можно болванки сделать) для CRUD какой-либо модели. ++ 7.1 Событие для создать пользователя , отрабатывает при создани - просто пишет в лог сообщения

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

Разные подходы показаны в качестве примера.

User полностью раскидан по слоям согасно архитектуры.

About

Base example Laravel 9.5 + Docker

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages