DataTables Omines捆绑包出现错误Symfony 4
我想知道如何使DataTables捆绑包工作,因为我一直无法使它工作 我执行了这个命令“composerrequireomines/datatables包”。 在此之后,我执行了“PHPBIN/console资产:安装”。 我还添加了依赖项 但是当我进入我的页面时,我有一个错误,您请求了一个不存在的服务“Omines\DataTablesBundle\DataTableFactory” 你能帮我吗DataTables Omines捆绑包出现错误Symfony 4,symfony,datatables,Symfony,Datatables,我想知道如何使DataTables捆绑包工作,因为我一直无法使它工作 我执行了这个命令“composerrequireomines/datatables包”。 在此之后,我执行了“PHPBIN/console资产:安装”。 我还添加了依赖项 但是当我进入我的页面时,我有一个错误,您请求了一个不存在的服务“Omines\DataTablesBundle\DataTableFactory” 你能帮我吗 <?php namespace App\Controller; use App\Enti
<?php
namespace App\Controller;
use App\Entity\User;
use App\Form\AdminUserFormType;
use App\Repository\UserRepository;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Component\HttpFoundation\Request;
use Omines\DataTablesBundle\Column\TextColumn;
use Symfony\Component\Routing\Annotation\Route;
use Omines\DataTablesBundle\Adapter\ArrayAdapter;
use Symfony\Component\HttpFoundation\JsonResponse;
use Omines\DataTablesBundle\Controller\DataTablesTrait;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class UsersController extends Controller
{
use DataTablesTrait;
/**
* @Route("/admin/user/test", name="users_test")
*/
public function usersTest(Request $request){
$table = $this->createDataTable()
->add('firstName', TextColumn::class)
->add('lastName', TextColumn::class)
->createAdapter(ArrayAdapter::class, [
['firstName' => 'Donald', 'lastName' => 'Trump'],
['firstName' => 'Barack', 'lastName' => 'Obama'],
])
->handleRequest($request);
if ($table->isCallback()) {
return $table->getResponse();
}
return $this->render('users/test.html.twig', ['datatable' => $table]);
}
}
您不应该扩展AbstractController
:
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class MyClass extends Controller{}
我更改代码。我的类扩展了AbstractController。我复制并粘贴了您的,但我有一个错误语法,用于“受保护的datatableFactory;公共函数uu构造(datatableFactory$datatableFactory){$this->datatableFactory=$datatableFactory;}”添加使用Omines\DataTableBundle\datatableFactory?是,我添加了“use Omines\DataTablesBundle\DataTableFactory”删除use DataTablesTrait;并将$this->createDataTable()更改为$this->datatableFactory->create([]),检查捆绑服务是否正常工作<代码>php bin/控制台调试:容器
class UsersController extends AbstractController
{
use DataTablesTrait;
protected datatableFactory;
public function __construct(DataTableFactory $datatableFactory) {
$this->datatableFactory = $datatableFactory;
}
/**
* @Route("/admin/user/test", name="users_test")
*/
public function usersTest(Request $request){
$table = $this->createDataTable()
->add('firstName', TextColumn::class)
->add('lastName', TextColumn::class)
->createAdapter(ArrayAdapter::class, [
['firstName' => 'Donald', 'lastName' => 'Trump'],
['firstName' => 'Barack', 'lastName' => 'Obama'],
])
->handleRequest($request);
if ($table->isCallback()) {
return $table->getResponse();
}
return $this->render('users/test.html.twig', ['datatable' => $table]);
}
}
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class MyClass extends Controller{}