Laravel-datatables: 找不到类“Yajra\Datatables\Facades\Datatables”

创建于 2015-12-08  ·  32评论  ·  资料来源: yajra/laravel-datatables

您好,为什么我会收到此错误:

Class 'Yajra\Datatables\Facades\Datatables' not found

因为我从不更新任何东西。

我的 app.php 是:

Yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => Yajra\Datatables\Datatables::class,

如何解决?

最有用的评论

@shairozan ,在 v6.0 上删除了 Facade 文件,并在服务提供者中自动注册了一个别名。 您需要将此use Yajra\Datatables\Facades\Datatables替换为use Datatables或改用Yajra\Datatables\Datatables以获得更好的 IDE 支持。

所有32条评论

改变以下

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很抱歉给您带来不便。 到目前为止,您做了哪些步骤? 是使用全新安装还是升级项目?

一些技巧:

  1. 使用composer show仔细检查您正在使用的软件包版本。
  2. 按照@RBBarani 的建议,删除bootstrap/cache文件夹下的所有文件。
  3. 删除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,在别名数组中

使用这个,它为我解决了这个问题

我在这里面临同样的问题。 代码在本地完美运行,但我把它带到服务器上,我的整个应用程序无法引导。
采取的步骤。

  1. 我将 yajra 从我的供应商复制到服务器
  2. 还将供应商 config/datatables.php 复制到服务器
  3. 复制了 composer 和 composer.lock
  4. 清除服务器引导缓存中的所有内容

经过 2 小时的尝试我在这里看到的东西后,我真的很沮丧 :(

经过几个小时的尝试。 我决定重新上传在我的共享主机服务器中工作的本地代码。 现在工作正常。 谢谢亚吉拉

我对 laravel 7 有同样的问题。 我执行: php artisan config:cache
我的问题是结果。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

ghost picture ghost  ·  3评论

Mopster picture Mopster  ·  3评论

jackrsantana picture jackrsantana  ·  3评论

FilipeBorges1993 picture FilipeBorges1993  ·  3评论

nasirkhan picture nasirkhan  ·  3评论