Bonjour, Pourquoi j'obtiens cette erreur :
Class 'Yajra\Datatables\Facades\Datatables' not found
Parce que je ne mets jamais rien à jour.
Mon app.php est :
Yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => Yajra\Datatables\Datatables::class,
Comment résoudre ce problème ?
Changement suivant
Yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => Yajra\Datatables\Datatables::class,
pour ça
yajra\Datatables\DatatablesServiceProvider::class,
'Datatables' => yajra\Datatables\Datatables::class,
et essaye.
Toujours obtenir une erreur,
Server Error
500
La première fois que j'installe cette version :
"yajra/laravel-datatables-oracle": "dev-develop"
Peut-être un moyen de réinitialiser la configuration ??
essaye ça
'yajra\Datatables\DatatablesServiceProvider',
supprimer :: classe
J'ai toujours une erreur :(
Voici mes logs 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"}}
J'ai installé "yajra/laravel-datatables-oracle": "~5.0"
sa fonctionne bien.
la version dev-develop ne fonctionne pas pour moi
dev-develop
utilise l'espace de noms Yajra\Datatables
qui sera étiqueté comme v6.0.0. Pour la façade, veuillez utiliser 'Datatables' => Yajra\Datatables\Datatables::class,
atm.
hmm, j'ai déjà changé pour
'Datatables' => Yajra\Datatables\Datatables::class
Mais ça ne marche toujours pas.
Et, finalement, je rétrograde à
"yajra/laravel-datatables-oracle": "~5.0"
Ça fonctionne maintenant.
Mais je ne sais pas pourquoi j'obtiens cette erreur soudainement.
Merci pour votre soutien :) :+1:
En fait, j'ai toujours ce problème. J'ai dû revenir à 5 pour le faire fonctionner, mais je ne dirais pas que c'est corrigé en 6.
@shairozan , le fichier Facade a été supprimé sur la v6.0 et un alias a été automatiquement enregistré chez le fournisseur de services. Vous devez remplacer ce use Yajra\Datatables\Facades\Datatables
par seulement use Datatables
ou utiliser Yajra\Datatables\Datatables
à la place pour un meilleur support IDE.
Ce problème semble toujours exister. Sur une installation de Laravel 5.1.29, j'ai dû changer Yajra\Datatables\DatatablesServiceProvider::class en yajra\Datatables\DatatablesServiceProvider::class dans le tableau des fournisseurs avant que cela ne fonctionne.
Version de yajra/laravel-datatables-oracle
{
"nom": "yajra/laravel-datatables-oracle",
"version": "v6.0.0-alpha",
"la source": {
"type": "git",
"url": " https://github.com/yajra/laravel-datatables.git ",
"référence": "41e62d7febf28f901b10d68b953c4dadbb37b1e3"
},
Error seen when trying to do `php artisan vendor:publish --tag=datatables`
[Symfony\Component\Debug\Exception\FatalErrorException]
Classe 'Yajra\Datatables\DatatablesServiceProvider' introuvable
Vos besoins n'ont pas pu être résolus en un ensemble de packages installables.
Problème 1
- laraveldaily/quickadmin 2.0.0 nécessite yajra/laravel-datatables-oracle ^6.18 -> satisfaisable par yajra/laravel-datatables-oracle[v6.18.0, v6.18.1, v6.18.2, v6.19.0].
- laraveldaily/quickadmin 2.0.1 nécessite yajra/laravel-datatables-oracle ^6.18 -> satisfaisable par yajra/laravel-datatables-oracle[v6.18.0, v6.18.1, v6.18.2, v6.19.0].
- laraveldaily/quickadmin 2.0.2 nécessite yajra/laravel-datatables-oracle ^6.18 -> satisfaisable par yajra/laravel-datatables-oracle[v6.18.0, v6.18.1, v6.18.2, v6.19.0].
- yajra/laravel-datatables-oracle v6.18.0 nécessite dompdf/dompdf ^0.7 -> satisfaisable par dompdf/dompdf[v0.7.0].
- yajra/laravel-datatables-oracle v6.18.1 nécessite dompdf/dompdf ^0.7 -> satisfaisable par dompdf/dompdf[v0.7.0].
- yajra/laravel-datatables-oracle v6.18.2 nécessite dompdf/dompdf ^0.7 -> satisfaisable par dompdf/dompdf[v0.7.0].
- yajra/laravel-datatables-oracle v6.19.0 nécessite dompdf/dompdf ^0.7 -> satisfaisable par dompdf/dompdf[v0.7.0].
- dompdf/dompdf v0.7.0 nécessite ext-gd * -> l'extension PHP demandée gd est absente de votre système.
- Demande d'installation pour laraveldaily/quickadmin ^2.0 -> satisfaisable par laraveldaily/quickadmin[2.0.0, 2.0.1, 2.0.2].
Pour activer les extensions, vérifiez qu'elles sont activées dans ces fichiers .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
Vous pouvez également exécuter php --ini
dans le terminal pour voir quels fichiers sont utilisés par PHP en mode CLI.
L'installation a échoué, ramenant ./composer.json à son contenu d'origine.
Je reçois parfois ce message même si tout fonctionnait bien jusqu'à présent.
Pour moi, le simple fait d'exécuter composer update
résout le problème.
supprimez simplement tous les fichiers dans un dossier bootstrap->cache. Et exécutez votre projet. Bug réparé.
Ni "yajra" ni "Yajra" ne fonctionnent. J'ai toujours l'erreur avec Alaval 5.4 & Datatables v7.
Cela fait 3 heures que je galère avec cette bibliothèque, c'est épuisant.
@idmeneo désolé pour le désagrément. Quelles sont les étapes que vous avez faites jusqu'à présent ? Vous utilisez une nouvelle installation ou mettez à niveau un projet ?
Quelques conseils:
composer show
pour vérifier la version des packages que vous utilisez.bootstrap/cache
comme suggéré par @RBBarani.vendor
et réinstallez tous les packages en utilisant composer install
.-- Éditer --
L'espace de noms "yajra" et "Yajra" est un problème un peu ancien de v5.x et inférieur et je pense qu'il n'est pas pertinent sur v7. Merci!
Merci pour la réponse. J'ai finalement réussi à le faire fonctionner en rétrogradant votre module vers la v6.2 et en mettant à jour toutes les autres bibliothèques.
Essayez de supprimer les opérateurs de sucre syntaxiques comme le signe tilde et caret dans composer.json. Parce que parfois, ils ne permettent pas l'installation de la version exacte. Le même problème m'est arrivé également. Alors cours,
comoposer update
Résolu le problème pour moi.
@wisnuvb L' espace de noms et le nom de la classe ont été mis à jour sur la v8. Utilisez DataTables
au lieu de Datatables
. Voir le guide de mise à niveau pour la réf.
bon, je n'ai pas lu le guide de mise à jour. une fois que c'est fait. Je vous remercie
Sur v8, exécutez composer update
et utilisez cet espace de noms use Yajra\DataTables\Facades\DataTables;
Passer de v6.0 à v8.0 m'a obligé à changer config/app.php
frro
'Datatables' => Yajra\Datatables\Facades\Datatables::class,
à
'Datatables' => Yajra\Datatables\Datatables::class,
et ça a bien fonctionné ensuite.
De plus, s'il est utilisé pour supprimer automatiquement les éléments html, vous devrez publier le package du fournisseur et modifier 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 veuillez consulter le guide de mise à niveau pour la réf.
L'espace de noms et le nom de la classe ont été mis à jour sur la v8. Utilisez DataTables au lieu de Datatables.
Ça a marché
La solution de @victorsteven a fonctionné sur un nouveau Laravel 5.6 + Datatables 8.7.0
Il s'agit d'utiliser YajraDataTables\FacadesDataTables ; fonctionne bien de mon coté merci
J'utilise la commande composer require yajra/laravel-datatables-oracle et je change la ligne ci-dessous
yajraDatatablesDatatablesServiceProvider :: classe,
'Datatables' => yajraDatatablesDatatables :: classe,
Ça marche.
Quelque chose comme ça https://appdividend.com/2018/04/16/laravel-datatables-tutorial-with-example/
Utilisez ceci:
'Datatables' => YajraDataTables\FacadesDataTables::class, // Datatable
D et T doivent être en majuscule.
J'ai eu cette erreur lorsque j'essayais de supprimer le paquet. Pour effacer l'erreur, allez dans boostrap > cache et effacez tout
YajraDataTablesDataTablesServiceProvider :: classe, dans le tableau des fournisseurs
YajraDataTables\FacadesDataTables::class, dans le tableau des alias
utilisez celui-ci, il a résolu le problème pour moi
Je suis confronté au même problème ici. le code fonctionne parfaitement en local, mais je le prends sur le serveur et toute mon application ne parvient pas à démarrer.
mesures prises.
Je suis vraiment frustré après 2 heures d'essayer des choses que je vois ici :(
Après des heures d'essai. J'ai décidé de télécharger à nouveau le code local qui fonctionnait sur mon serveur hôte partagé. et ça marche bien maintenant. Merci Yajra
J'ai le même problème avec laravel 7. J'exécute : php artisan config:cache
Et mon problème était le résultat.
Commentaire le plus utile
@shairozan , le fichier Facade a été supprimé sur la v6.0 et un alias a été automatiquement enregistré chez le fournisseur de services. Vous devez remplacer ce
use Yajra\Datatables\Facades\Datatables
par seulementuse Datatables
ou utiliserYajra\Datatables\Datatables
à la place pour un meilleur support IDE.