Сервисный слой в Laravel 5.7 - PullRequest
       1

Сервисный слой в Laravel 5.7

0 голосов
/ 22 ноября 2018

Я просмотрел документацию Laravel и обнаружил, что каждый запрос следует за потоком Средний уровень -> Уровень контроллера -> Уровень ресурсов .Но для моего проекта у меня есть огромная логика бизнес-обработки, которую нужно написать.Итак, я ищу вариант уровня обслуживания, где управление выполнением будет передаваться из контроллера, а затем уровень обслуживания будет выполнять логику обработки вместе с выборкой из базы данных.Но я не нашел ничего связанного с частью сервисного уровня в ремесленнике.

Итак, можете ли вы предложить мне, как я могу реализовать сервисный уровень в моем проекте?

1 Ответ

0 голосов
/ 23 ноября 2018

Как насчет создания папки Services в app/ и использования инъекций зависимостей контроллеров ?

Это будет примерно так:

MyService.php

<?php
namespace App\Services;

use App\Models\Bar;

class MyService
{
    public function foo(Bar $bar)
    {
       // do things
    }
}

MyController.php

<?php
namespace App\Http\Controllers;

use App\Services\MyService;
use App\Models\Bar;

class MyController extends Controller
{
    protected $myService;

    public function __construct(MyService $myService)
    {
        $this->myService = $myService;
    }

    public function handleRequest(Bar $bar)
    {
        $this->myService->foo($bar);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...