Как я могу узнать, какое заявление об использовании мне нужно добавить в Symfony 4? - PullRequest
0 голосов
/ 06 июля 2018

Я создал контроллер и назвал класс DataTableController. Но теперь я получаю сообщение об ошибке

InvalidArgumentException

Невозможно определить аргумент контроллера для «App \ Controller \ DataTableController :: usersAction ()»: запрос $ Аргумент подсказывает тип несуществующего класса или интерфейса: "App \ Controller \ Request". Вы забыли добавить заявление об использовании?

Как мне узнать, какое заявление об использовании мне нужно добавить?

<?php

namespace App\Controller;

use DataTables\DataTablesInterface;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\Routing\Annotation\Route;

/**
*
* @Route("/users", name="users")
*
* @param Request $request
* @param DataTablesInterface $datatables
* @return JsonResponse
*/

class DataTableController extends Controller
{

  const ID = 'users';

  public function usersAction(Request $request, DataTablesInterface $datatables): JsonResponse
  {
    try {
      // Tell the DataTables service to process the request,
      // specifying ID of the required handler.
      $results = $datatables->handle($request, 'users');

      return $this->json($results);
    }
    catch (HttpException $e) {
      // In fact the line below returns 400 HTTP status code.
      // The message contains the error description.
      return $this->json($e->getMessage(), $e->getStatusCode());
    }
  }

}

Ответы [ 2 ]

0 голосов
/ 12 сентября 2018

Я смог найти его, запустив:

php ./bin/console debug:autowiring

Кроме того, вы можете запустить ту же команду, но с флагом --show-private:

php ./bin/console debug:container --show-private

Надеюсь, это поможет.

0 голосов
/ 06 июля 2018

Отсутствует use:

use Symfony\Component\HttpFoundation\Request;

JsonResponse, HttpException также могут отсутствовать. Используйте автозаполнение IDE для импорта этих классов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...