您好,为什么我会收到此错误:
Class 'Yajra\Datatables\Facades\Datatables' not found
因为我从不更新任何东西。
我的 app.php 是:
Yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => Yajra\Datatables\Datatables::class,
如何解决?
改变以下
Yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => Yajra\Datatables\Datatables::class,
对此
yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => yajra\Datatables\Datatables::class,
并尝试。
仍然得到错误,
Server Error
500
我第一次安装这个版本:
"yajra/laravel-datatables-oracle": "dev-develop"
有什么办法可以重置配置??
试试这个
'yajra\Datatables\DatatablesServiceProvider',
删除 ::class
仍然有错误:(
这是我的 laravel 日志:
[2015-12-08 14:15:36] local.CRITICAL: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 'yajra\Datatables\DatatablesServiceProvider' not found' in /Applications/MAMP/htdocs/ulp3/bootstrap/cache/compiled.php:6916
Stack trace:
#0 {main} {"identification":{"id":"8593e01b-5cd9-4b85-9707-1fbaf2d10138"}}
我安装了“yajra/laravel-datatables-oracle”:“~5.0”
它工作正常。
dev-develop 版本不适合我
dev-develop
使用Yajra\Datatables
命名空间,该命名空间将被标记为 v6.0.0。 对于门面,请使用'Datatables' => Yajra\Datatables\Datatables::class,
atm。
嗯,我已经改成
'Datatables' => Yajra\Datatables\Datatables::class
但它仍然不起作用。
而且,最后我降级到
"yajra/laravel-datatables-oracle": "~5.0"
现在可以了。
但我不知道为什么我突然得到这个错误。
感谢您的支持:) :+1:
我实际上仍然有这个问题。 必须恢复到 5 才能让它工作,但我不会说它固定在 6 中。
@shairozan ,在 v6.0 上删除了 Facade 文件,并在服务提供者中自动注册了一个别名。 您需要将此use Yajra\Datatables\Facades\Datatables
替换为use Datatables
或改用Yajra\Datatables\Datatables
以获得更好的 IDE 支持。
这个问题似乎仍然存在。 在 Laravel 5.1.29 安装中,我必须将提供程序数组中的 Yajra\Datatables\DatatablesServiceProvider::class 更改为 yajra\Datatables\DatatablesServiceProvider::class 才能工作。
yajra/laravel-datatables-oracle 版本
{
“名称”:“yajra/laravel-datatables-oracle”,
“版本”:“v6.0.0-alpha”,
“来源”: {
“类型”:“git”,
“网址”:“ https://github.com/yajra/laravel-datatables.git ”,
“参考”:“41e62d7febf28f901b10d68b953c4dadbb37b1e3”
},
Error seen when trying to do `php artisan vendor:publish --tag=datatables`
[Symfony\组件\调试\异常\致命错误异常]
找不到类“Yajra\Datatables\DatatablesServiceProvider”
您的要求无法解决为一组可安装的软件包。
问题 1
- laraveldaily/quickadmin 2.0.0 需要 yajra/laravel-datatables-oracle ^6.18 -> 可以满足 yajra/laravel-datatables-oracle[v6.18.0, v6.18.1, v6.18.2, v6.19.0]。
- laraveldaily/quickadmin 2.0.1 需要 yajra/laravel-datatables-oracle ^6.18 -> 可以满足 yajra/laravel-datatables-oracle[v6.18.0, v6.18.1, v6.18.2, v6.19.0]。
- laraveldaily/quickadmin 2.0.2 需要 yajra/laravel-datatables-oracle ^6.18 -> 可满足 yajra/laravel-datatables-oracle[v6.18.0, v6.18.1, v6.18.2, v6.19.0]。
- yajra/laravel-datatables-oracle v6.18.0 需要 dompdf/dompdf ^0.7 -> 可由 dompdf/dompdf[v0.7.0] 满足。
- yajra/laravel-datatables-oracle v6.18.1 需要 dompdf/dompdf ^0.7 -> 可由 dompdf/dompdf[v0.7.0] 满足。
- yajra/laravel-datatables-oracle v6.18.2 需要 dompdf/dompdf ^0.7 -> 可由 dompdf/dompdf[v0.7.0] 满足。
- yajra/laravel-datatables-oracle v6.19.0 需要 dompdf/dompdf ^0.7 -> 可由 dompdf/dompdf[v0.7.0] 满足。
- dompdf/dompdf v0.7.0 需要 ext-gd * -> 您的系统中缺少请求的 PHP 扩展 gd。
- laraveldaily/quickadmin ^2.0 的安装请求 -> laraveldaily/quickadmin[2.0.0, 2.0.1, 2.0.2] 可满足。
要启用扩展,请验证它们是否在这些 .ini 文件中启用:
- /etc/php/7.0/cli/php.ini
- /etc/php/7.0/cli/conf.d/10-mysqlnd.ini
- /etc/php/7.0/cli/conf.d/10-opcache.ini
- /etc/php/7.0/cli/conf.d/10-pdo.ini
- /etc/php/7.0/cli/conf.d/15-xml.ini
- /etc/php/7.0/cli/conf.d/20-calendar.ini
- /etc/php/7.0/cli/conf.d/20-ctype.ini
- /etc/php/7.0/cli/conf.d/20-curl.ini
- /etc/php/7.0/cli/conf.d/20-dom.ini
- /etc/php/7.0/cli/conf.d/20-exif.ini
- /etc/php/7.0/cli/conf.d/20-fileinfo.ini
- /etc/php/7.0/cli/conf.d/20-ftp.ini
- /etc/php/7.0/cli/conf.d/20-gettext.ini
- /etc/php/7.0/cli/conf.d/20-iconv.ini
- /etc/php/7.0/cli/conf.d/20-json.ini
- /etc/php/7.0/cli/conf.d/20-mbstring.ini
- /etc/php/7.0/cli/conf.d/20-mcrypt.ini
- /etc/php/7.0/cli/conf.d/20-mysqli.ini
- /etc/php/7.0/cli/conf.d/20-pdo_mysql.ini
- /etc/php/7.0/cli/conf.d/20-phar.ini
- /etc/php/7.0/cli/conf.d/20-posix.ini
- /etc/php/7.0/cli/conf.d/20-readline.ini
- /etc/php/7.0/cli/conf.d/20-shmop.ini
- /etc/php/7.0/cli/conf.d/20-simplexml.ini
- /etc/php/7.0/cli/conf.d/20-sockets.ini
- /etc/php/7.0/cli/conf.d/20-sysvmsg.ini
- /etc/php/7.0/cli/conf.d/20-sysvsem.ini
- /etc/php/7.0/cli/conf.d/20-sysvshm.ini
- /etc/php/7.0/cli/conf.d/20-tokenizer.ini
- /etc/php/7.0/cli/conf.d/20-wddx.ini
- /etc/php/7.0/cli/conf.d/20-xmlreader.ini
- /etc/php/7.0/cli/conf.d/20-xmlwriter.ini
- /etc/php/7.0/cli/conf.d/20-xsl.ini
您还可以在终端中运行php --ini
以查看 PHP 在 CLI 模式下使用了哪些文件。
安装失败,正在将 ./composer.json 还原为其原始内容。
即使到那时为止它一直运行良好,我偶尔也会收到此消息。
对我来说,只需运行composer update
即可解决问题。
只需删除 bootstrap->cache 文件夹中的所有文件。 并运行您的项目。 错误已修复。
“yajra”和“Yajra”都不起作用。 Alaval 5.4 & Datatables v7 仍然存在错误。
我已经在这个库上苦苦挣扎了 3 个小时,太累了。
@idmeneo很抱歉给您带来不便。 到目前为止,您做了哪些步骤? 是使用全新安装还是升级项目?
一些技巧:
composer show
仔细检查您正在使用的软件包版本。bootstrap/cache
文件夹下的所有文件。vendor
文件夹并使用composer install
重新安装所有软件包。- 编辑 -
“yajra”和“Yajra”命名空间是 v5.x 及以下版本的一个老问题,我认为与 v7 无关。 谢谢!
谢谢你的答案。 我终于通过将你的模块降级到 v6.2 并更新所有其他库来让它工作。
尝试在 composer.json 中删除语法糖运算符,如波浪号和插入符号。 因为有时他们不允许安装确切的版本。 同样的问题也发生在我身上。 然后运行,
comoposer update
为我解决了这个问题。
@wisnuvb命名空间和类名已在 v8 上更新。 使用DataTables
代替Datatables
。 请参阅升级指南以获取参考。
对,我还没有阅读升级指南。 一旦完成。 谢谢
在 v8 上,运行composer update
并使用此命名空间use Yajra\DataTables\Facades\DataTables;
从 v6.0 更改为 v8.0 迫使我更改config/app.php
弗罗
'Datatables' => Yajra\Datatables\Facades\Datatables::class,
到
'Datatables' => Yajra\Datatables\Datatables::class,
之后效果很好。
此外,如果用于自动取消转义 html 元素,则必须发布供应商包并更改config/datatables.php
/*
* List of columns to be escaped. If set to *, all columns are escape.
* Note: You can set the value to empty array to disable XSS protection.
*/
'escape' => '*',
到
'escape' => [],
@lexxyungcarter请参阅升级指南以获取参考。
命名空间和类名在 v8 上进行了更新。 使用数据表而不是数据表。
那行得通
@victorsteven的解决方案适用于新的 Laravel 5.6 + Datatables 8.7.0
这是使用 YajraDataTables\FacadesDataTables; 在我身边工作得很好谢谢
我使用composer require yajra/laravel-datatables-oracle命令并更改以下行
yajraDatatablesDatatablesServiceProvider::class,
'数据表' => yajraDatatablesDatatables::class,
它在工作。
像这样https://appdividend.com/2018/04/16/laravel-datatables-tutorial-with-example/
用这个:
'Datatables' => YajraDataTables\FacadesDataTables::class, // 数据表
D 和 T 应该是大写。
当我尝试删除包时出现此错误。 要清除错误,请转到 boostrap > 缓存并清除所有内容
YajraDataTablesDataTablesServiceProvider::class,在 providers 数组中
YajraDataTables\FacadesDataTables::class,在别名数组中
使用这个,它为我解决了这个问题
我在这里面临同样的问题。 代码在本地完美运行,但我把它带到服务器上,我的整个应用程序无法引导。
采取的步骤。
经过 2 小时的尝试我在这里看到的东西后,我真的很沮丧 :(
经过几个小时的尝试。 我决定重新上传在我的共享主机服务器中工作的本地代码。 现在工作正常。 谢谢亚吉拉
我对 laravel 7 有同样的问题。 我执行: php artisan config:cache
我的问题是结果。
最有用的评论
@shairozan ,在 v6.0 上删除了 Facade 文件,并在服务提供者中自动注册了一个别名。 您需要将此
use Yajra\Datatables\Facades\Datatables
替换为use Datatables
或改用Yajra\Datatables\Datatables
以获得更好的 IDE 支持。