【发布时间】:2016-09-29 15:56:16
【问题描述】:
我在 phpmyadmin 和新表中创建新数据库。
那我做
public function next(Request $request){
$langs = DB::connection('mydb')->select('select * from lang');
}
得到
Database [compgen] not configured.
在我的 .env 中
DB_HOST=localhost
DB_DATABASE=test
DB_USERNAME=root
DB_PASSWORD=123
在我的 config/database.php 中
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'test'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', '123'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => 'test_',
'strict' => false,
],
【问题讨论】:
-
做一个 composer dump autoload 和 artisan config:clear
-
'prefix' => 'test_'以及名为lang的表?我猜这可能会导致 eloquent builder 的冲突 -
在深入挖掘之前,请确保文件
config/database.php存在...听起来很愚蠢,但是当我克隆一个作者没有提交config/database.php的外部Laravel 项目时,它发生在我身上出于某种原因! -
我遇到了类似的问题,未配置数据库 [mysql]。如果我运行 php artisan cache:clear 或 config:cache 我会得到同样的错误。我通过进入 laravel/bootstrap/cache 并删除那里的 config.php 文件来解决它,然后再次运行上述命令。我相信这是一个文件权限错误,它阻止了缓存的 config.php 文件实际被清除。
标签: laravel laravel-5 laravel-5.1