1
votes

Erreur Laravel - Table de base ou vue introuvable

J'essaie d'exécuter ce code que j'ai cloné, mais j'obtiens toujours cette erreur.

[Illuminate\Database\QueryException]
  SQLSTATE[42S02]: Base table or view not found: 1146 Table 'roocket.permissions' doesn't exist (SQL: select * from `permissions`)



  [PDOException]
  SQLSTATE[42S02]: Base table or view not found: 1146 Table 'roocket.permissions' doesn't exist-Vue-Dashboard/blob/master/src/pages/Pages/RTLPage.vue

J'ai exécuté composer install et npm install , et je suis nouveau dans le monde de laravel.

J'ai téléchargé le dépôt sur mon github https://github.com/arya107/laravelbackend . J'ai connecté la base de données via XAMPP et je ne sais pas quel est le problème.


5 commentaires

Dans DB, vous devez créer une table avec des autorisations de nom, (le fichier de migration manque pour les autorisations de table)


Avez-vous exécuté les migrations?


ErDiablo que voulez-vous dire?


Je pense que vous oubliez les autorisations de table. Sur votre migration github, je ne l'ai pas trouvé. Votre problème dit qu'il n'y a pas de tableaux. Vous pouvez juste essayer ma solution peut être utile


rien n'est importé dans la base de données


3 Réponses :


0
votes
php artisan migrate 
You are missing the DB table. Run the migrations included in the project to create the tables in your DB.

6 commentaires

La commande a-t-elle fonctionné? Avez-vous obtenu les tables dans votre base de données ou vous avez une erreur?


Pouvez-vous exécuter php artisan config: cache puis à nouveau la commande migrate?


même erreur `[Illuminate \ Database \ QueryException] SQLSTATE [42S02]: Table de base ou vue introuvable: 1146 La table 'roocket.permissions' n'existe pas (SQL: sélectionnez * à partir des autorisations ) [PDOException ] SQLSTATE [42S02]: Table de base ou vue non trouvée: 1146 La table 'roocket.permissions' n'existe pas`


J'ai cloné ce projet, pouvez-vous me dire comment faire la migration s'il vous plaît?


Désolé, la table doit être créée, la migration existe dans la migration 2017_06_04_055720_create_roles_table.php. Lors de l'exécution de la commande migrate, N'IMPORTE QUELLE table est-elle créée? Votre fichier .env est-il configuré pour se connecter à votre base de données locale?


ouais je l'ai connecté, j'obtiens cette erreur et je ne parviens pas à migrer



0
votes

La migration crée le champ et relation en même temps. J'essaierais d'utiliser des migrations séparées, comme l'explique cette réponse:

Mais je crée toujours une clé étrangère dans une commande Schema :: table () distincte, car certaines bases de données ont besoin que vous ayez la colonne avant d'y attacher la contrainte

Je pense (je ne l'ai pas essayé) que votre moteur de base de données n'accepte pas la création de la relation de clé étrangère car le champ FK n'a pas encore été créé.

Vous pouvez également essayer pour effectuer une migration complète en utilisant:

php artisan migrate:fresh

Cette commande supprimera toutes les tables de votre base de données, alors soyez prudent!


0 commentaires

1
votes

Fondamentalement, le correctif pour moi était que je devais commenter

      {
        Gate::define($permission->name , function ($user) use($permission){
            return $user->hasRole($permission->roles);
        });
      }

Ensuite, j'ai été autorisé à l'installer, puis j'ai réactivé le code :)


1 commentaires

Eu exactement le même problème dans mon App / Providers / AuthServiceProvider.php. Goofy, mais ça marche ...