在 laravel 上安装此软件包后,我收到此错误:
ReflectionException in Container.php line 738:
Class datatables does not exist
安装:
composer require yajra/laravel-datatables-oracle
app.php 上的配置:
'providers' => [
...
yajra\Datatables\DatatablesServiceProvider::class,
],
'aliases' => [
...
'Datatables' => yajra\Datatables\Datatables::class,
],
运行发布命令:
php artisan vendor:publish
路线:
Route::get('profitsData', 'ReportProfitsController<strong i="18">@data</strong>');
控制器:
namespace App\Http\Controllers;
use Yajra\Datatables\Datatables;
class ReportProfitsController extends Controller
{
public function data()
{
return Datatables::of(User::select('*'))->make(true);
}
}
```
作曲家转储自动加载
请使用Yajra\Datatables\DatatablesServiceProvider::class
作为服务提供者,无需添加外观/别名。
'providers' => [
...
Yajra\Datatables\DatatablesServiceProvider::class,
],
更改为该名称并从别名中删除后,问题未解决:(
你使用的是什么版本的包和 Laravel? 你能删除别名吗?
拉拉维尔:
"laravel/framework": "5.2.*",
数据表:
"yajra/laravel-datatables-oracle": "^6.6.0"
我再次将数据表添加到别名
没有任何机构可以帮助我吗? :(
你是从低版本升级吗? 尝试删除供应商文件夹,然后执行composer update
。
- 编辑 -
yajra
命名空间来自版本 5 及更低版本。 从 v6 开始,新的命名空间是Yajra
(大写 Y)。
啊啊啊天啊!!! 不要解决:| :| :|
你对这个问题有其他解决方案吗? :(
嗯。 也许是导致问题的缓存? 尝试删除bootstrap/cache/services.php
然后重新安装所有软件包?
我使用这个包的最新版本,但我还没有,删除
service.php 文件并重新安装不能解决我的问题:(
1.首先将您的项目重命名为新名称。
2.使用作曲家更新
3.运行 php artisan config:cache
4.运行 php artisan cache:clear
我有同样的问题....并且无法解决这个问题:(
@tux-world @wahyusigit ,你能解决这个问题吗? 您是否尝试过 SO 的建议? 谢谢!
我发现这是通过将“最低稳定性”从“开发”更改为“稳定”来解决的,因为作曲家试图引入“6.0.0-alpha”而不是最新的稳定“6.20.0”。 也许这会有所帮助。
如果您没有 conf/datatables.php,也会发生同样的错误。 尝试安装最新或更高版本 7.x
composer require yajra/laravel-datatables-oracle
在 config/app.php 中添加这些行
Yajra\Datatables\DatatablesServiceProvider::class,
Datatables' => Yajra\Datatables\Facades\Datatables::class,
php artisian config:cache
如果您没有文件 config/datables.conf。 尝试将这些文件粘贴到那里。
https://gist.github.com/hsali/1cab0d6c81020bf7bce043b65f94373a
如果有人使用 datatables 8 来阅读这篇文章,请考虑到包命名空间已从 YajraDatatables 更新为 YajraDataTables。 带有大写 T。
@price2b谢谢。 你说得对。
最有用的评论
如果有人使用 datatables 8 来阅读这篇文章,请考虑到包命名空间已从 YajraDatatables 更新为 YajraDataTables。 带有大写 T。