1
votes

Erreur lors de la tentative d'affichage de la page, erreur suivante: Action Facade \ Ignition \ Http \ Controllers \ ShareReportController non défini

J'obtiens l'erreur ci-dessous en essayant d'accéder à la route, mais le contrôleur est nécessaire pour charger les données:

(1/1) InvalidArgumentException
Action Facade\Ignition\Http\Controllers\ShareReportController not defined.

J'utilise le package Tenancy / Multi-Tenant et j'ai configuré il utilise routes / tenants.php pour charger des routes spécifiquement pour les locataires. Si je fais ce qui suit dans le fichier tenants.php, il renvoie la bonne réponse.

Route::get('/testt', 'TenantController@testt');

cependant quand j'essaye de faire de même, mais en chargeant les données d'un contrôleur tel comme ceci:

Route::get('/test', function() {
    return 'Test success';
});

Il montrera l'erreur:

(1/1) InvalidArgumentException
Action Facade\Ignition\Http\Controllers\ShareReportController not defined.

Si j'essaye de mettre le même code dans le Web. php routes, alors cela fonctionne parfaitement. Quel pourrait être le problème? Est-ce quelque chose dans mon code? Cela peut-il être dû au package multi-locataire que j'utilise? Comment est-ce que je pourrais continuer à déboguer ceci?


1 commentaires

Je ne sais pas mais dans mon cas parfois, cela montre une erreur lorsque la page était inactive pendant un certain temps, mais après l'actualisation, cela fonctionne bien.


7 Réponses :


4
votes

Le correctif consistait à regrouper les routes dans tenants.php avec le middleware Web et un espace de noms:

Route::middleware('web')->namespace('App\Http\Controllers')->group(function() {
    //Routes
});


0 commentaires

1
votes

Après quelques minutes à essayer de résoudre le problème, j'ai trouvé la solution.

Vous n'avez pas besoin de regrouper les itinéraires si vous l'avez fait dans RoutesServiceProvider ou dans un fournisseur personnalisé.

Allez simplement à config / tenancy.php et accédez à routes -> chemin , supprimez la fonction base_path () et laissez la chaîne:

'path'           => 'routes/tenants/tenants.php',

à

'path'           => base_path('routes/tenants/tenants.php'),

Et cette erreur devrait être corrigée.


0 commentaires

3
votes

Essayez composer dump-autoload -o cela m'a aidé.


0 commentaires

1
votes

Pouvez-vous voir si vos routes sont mises en cache et essayer de vider ce cache. Effacez simplement le cache de route du projet en utilisant route:clear


0 commentaires

0
votes

J'ai eu une erreur similaire après l'installation de laravel / passeport 8.1 dans Laravel 6.2:

Action Facade \ Ignition \ Http \ Controllers \ ExecuteSolutionController non défini.

Correction de l'exécution de mise à jour du compositeur . Le résultat était:

Mise à jour façade / allumage (1.13.0 => 1.13.1):


0 commentaires

0
votes

Pour les personnes qui trouvent cela via Google: j'ai eu une erreur similaire avec Laravel 6.5. J'avais gâché mon AppServiceProvider avec une fusion Git incomplète:

<?php

namespace App\Providers;

use Illuminate\Support\Str;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\Facades\Request;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Blade;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
    }

    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
<<<<<<< HEAD
        Blade::if(
            'iscurrentroute',
            function ($route) {
                $route = Str::replaceFirst(Request::getSchemeAndHttpHost().'/', '', $route);
                return Request::is($route);
            }
        );
=======
        Blade::component('components.sortable', 'sortable');
>>>>>>> feature/WLI-58-bedrijf-beheren
    }
}

Suppression des "= 's", " 's", et double utilisation de Blade réparé pour moi.


0 commentaires

0
votes

côté serveur, je suis allé dans le dossier / stoage et j'ai récupéré des espèces. Par exemple. vues dans le dossier / storage. Ensuite, les autorisations de tous les dossiers et fichiers entiers ont également été modifiées pour pouvoir lire et écrire. Ensuite, les pages ont commencé à s'afficher comme prévu


0 commentaires