Подсветка Builder не будет подключаться (не красноречивый)
Я должен использовать Illuminate (Non Eloquent) для подсистемы. Я не хочу делать более 1000 моделей для базы данных.
Я могу заставить методы Query работать, но я также хотел бы добавить Builder
,
app.php
use \Illuminate\Database\Capsule\Manager as Capsule;
use \Illuminate\Database\Query\Builder;
use \SuperClosure\SerializableClosure;
use \Pimple\Container;
$container = new Container();
$container['db'] = new SerializableClosure(function() use ($database_config) {
print_r($database_config);
$capsule = new Capsule;
$capsule->addConnection([
'driver' => $database_config['driver'],
'host' => $database_config['host'],
'database' => $database_config['database'],
'username' => $database_config['username'],
'password' => $database_config['password'],
'charset' => $database_config['charset'],
'collation' => $database_config['collation'],
]);
$capsule->setFetchMode(\PDO::FETCH_OBJ);
// Re-use the connection if needed
$connection = $capsule->getConnection();
// I want to Attach this so I can have access in one DI call.
$capsule->builder = new Builder($connection);
return $connection;
});
Ошибка
Я получаю следующую ошибку ТОЛЬКО при попытке добавить компоновщик:
PHP Fatal error: Uncaught exception 'InvalidArgumentException' with message
'Unsupported driver []' in
(...) /vendor/illuminate/database/Connectors/ConnectionFactory.php:226
В документации я вижу, что __construct() требует подключения, но также Grammar
а также Processors
объект, мне это нужно?
$ database_config в закрытии
$database_config =
(
[driver] => mysql
[host] => localhost
[database] => project
[username] => root
[password] =>
[charset] => utf8
[collation] => utf8_unicode_ci
)
composer.json
"illuminate/database": "^5.2",
"illuminate/pagination": "^5.2",
"illuminate/events": "^5.2",
"illuminate/console": "^5.2",