php - 如何找出需要在 Symfony 4 中添加的 use 语句?

标签 php namespaces

我创建了一个 Controller 并将类命名为 DataTableController .但现在我收到一条错误消息

InvalidArgumentException

Cannot determine controller argument for "App\Controller\DataTableController::usersAction()": the $request argument is type-hinted with the non-existent class or interface: "App\Controller\Request". Did you forget to add a use statement?



如何找出需要添加的使用语句类型?
<?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());
    }
  }

}

最佳答案

use不见了:

use Symfony\Component\HttpFoundation\Request;
JsonResponse , HttpException可能也不见了。使用 IDE 自动完成功能导入这些类

关于php - 如何找出需要在 Symfony 4 中添加的 use 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51207724/

相关文章:

php - AJAX sendlike.php 喜欢和不喜欢 PHP 和 mysql

javascript - 如何设置 mailto 表单结果的样式?

php - 将值放入 mysql 与之前的值相同

php - 构建 Laravel Web API 时更改表列名称

php - 获取两个字符之间的所有内容

ruby - 如何判断一个Constant是否定义在模块命名空间内,而不是全局命名空间?

c++ - 如何从另一个命名空间中显式特化函数模板?

xml - XSLT 向元素添加命名空间前缀最佳实践

XML 架构 - elementFormDefault 是不合格的,但使用了命名空间前缀

.net - 如何从给定的命名空间中获取所有方法?