@gitdev

Хороший ли тон передавать Symfony\Component\HttpFoundation\Request в сервис?

Пример кода:
class RealtyController extends Controller
{
    public function searchAction(Request $request, RealtyService $realtyService)
    {
        $realties = $realtyService->getRealties($request);
        return new JsonResponse($realties);
    }


И второе: можно ли вообще передавать Request в "Сервис слой" ведь код может стать не тестируемым.
  • Вопрос задан
  • 177 просмотров
Решения вопроса 1
myks92
@myks92
Нашёл решение — пометь вопрос ответом!
1. Работу с request используют высокоуровневые вещи вроде контроллеров, поэтому использовать их в своих сервисах не стоит. Ваш сервис это по сути слой связи приложения и вашего кода. Поэтому правильней всего переложить данные из request в какую-то DTO например из патерна CQRS это может быть Command(), Query()

2. Даже когда вам потребуется передавать Request в какие-то свои классы, то лучше для этого использовать PSR интерфейсы. Тогда ваш Request будет фреймворконезависимым. .
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы