2017-08-29 4 views
0

J'essaye de créer un nouvel environnement de développement virtuel pour un de mes projets sur Github. J'ai installé MariaDB, PHP 7, fait un clone local du référentiel, et restauré son fichier .env. Ça devrait marcher.Appel à une fonction membre connection() sur null

Malheureusement, quand je tape php artisan et compositeur mise à jour, je reçois l'erreur suivante:

PHP Fatal error: Uncaught Error: Call to a member function connection() on null in src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1058
Stack trace:
#0 src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1024): Illuminate\Database\Eloquent\Model::resolveConnection(NULL)
#1 src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(859): Illuminate\Database\Eloquent\Model->getConnection()
#2 src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(818): Illuminate\Database\Eloquent\Model->newBaseQueryBuilder()
#3 src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(802): Illuminate\Database\Eloquent\Model->newQueryWithoutScopes()
#4 src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1374): Illuminate\Database\Eloquen in src/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php on line 1058

Je ne sais pas si cela est pertinent pour l'erreur à portée de main, mais notez la faute d'orthographe d'Eloquent sur la trace de la pile # 4.

Vous pouvez trouver mon fichier composer.json ici:
https://github.com/galadhremmin/Parf-Edhellen/blob/master/src/composer.json

PHP version: 7.1.2 sur Debian 9.

Toutes les idées ce qui pourrait être mal?

Modifier Cela affecte les composants artisan et compositeur qui ne sera même pas courir.

+0

MariaDB (le service MySQL) est-il réellement allumé? Ce n'est pas parce que vous l'avez installé que ça marche. –

+0

@BrianGottier Je crois que c'est le cas, car il répond quand je tape _mysql_ dans le terminal. Je peux me connecter et interroger la base de données avec les informations d'identification fournies dans le fichier _.env_. – Leonard

+0

Regardez ce fichier: src/fournisseur/laravel/framework/src/Illuminate/Base de données/Eloquent/Model.php numéro de ligne 1058, quelle que soit l'instance d'une classe devant la méthode connection() n'a pas été instanciée. –

Répondre

2

J'ai trouvé la racine du problème en utilisant debug_print_backtrace. C'est une excellente méthode qui imprime un back-trace complet.

Le problème dans ce cas était le fait que j'avais attaché un service de journalisation au gestionnaire d'exception. L'enregistreur atteignait une base de données afin d'enregistrer l'erreur survenue, et il ne prenait pas en charge l'environnement CLI pas.

+0

Merci d'avoir posté votre solution. –