2016-12-29 6 views
0

У меня возникла странная проблема с Laravel, где он ищет соединение mysql, когда нет соединения под названием mysql. В моей database.php конфигурации, у меня есть соединение по умолчанию установлено значение:Laravel не читает database.php config правильно

'default' => env('DB_CONNECTION', 'permissions'), 

и в моем .env файл, у меня есть строка:

DB_CONNECTION=permissions 

Вот трассировки стека:

local.ERROR: InvalidArgumentException: Database [mysql] not configured. in D:\Development\Permissions\vendor\laravel\framework\src\Illuminate\Database\DatabaseManager.php:239 
Stack trace: 
#0 D:\Development\Permissions\vendor\laravel\framework\src\Illuminate\Database\DatabaseManager.php(158): Illuminate\Database\DatabaseManager->getConfig('mysql') 
#1 D:\Development\Permissions\vendor\laravel\framework\src\Illuminate\Database\DatabaseManager.php(68): Illuminate\Database\DatabaseManager->makeConnection('mysql') 
#2 D:\Development\Permissions\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(3348): Illuminate\Database\DatabaseManager->connection('mysql') 
#3 D:\Development\Permissions\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php(3314): Illuminate\Database\Eloquent\Model::resolveConnection(NULL) 

Я проследил проблему до звонка до vendor\laravel\framework\src\Illuminate\Database\DatabaseManager->getDefaultConnection(). По какой-то причине, хотя соединение по умолчанию установлено в permissions, возвращаемое имя соединения равно mysql. Вот функция для справки:

public function getDefaultConnection() 
{ 
    return $this->app['config']['database.default']; 
} 

Этот вопрос apearing на коробке Windows 10 работает ampps, но не является проблемой при работе через усадьбу.

EDIT:

Я могу подтвердить, что это 'default' => env('DB_CONNECTION', 'permissions'), строка в файле database.php, потому что, когда он изменяется на 'default' => 'permissions', приложение работает, как ожидалось.

+0

Пробовал очистить кеш конфигурации? ('php artisan config: clear') – manniL

+0

Я дважды запускал эту команду. – JRLambert

+0

Хорошо. Установили ли вы подключение «разрешения»? Если да, пожалуйста, покажите нам код. – manniL

ответ

2

Необходимо выполнить следующие команды.

Чтобы очистить кэш -

php artisan cache:clear 

Очистить кэш конфигурации

php artisan config:clear 

Затем перезапустить ваш сервер Laravel. Он должен работать уже сейчас.

 Смежные вопросы

  • Нет связанных вопросов^_^