Dbal connection
Categories
Component ID
2831628
Component name
Dbal connection
Component type
module
Maintenance status
Development status
Component security advisory coverage
covered
Downloads
595
Component created
Component changed
Component body
About
If you are using a composer library that needs a DBAL connection, this module provides a factory service that lets you inject that into your services.
e.g.
namespace HoohaWhizzy;
use DoctrineDBALConnection;
/**
* Provides just enough fizzwang and not a scrap more.
*/
class Fizzwang {
/**
* DBAL connection.
*
* @var DoctrineDBALConnection
*/
protected $connection;
/**
* Creates a new Fizzwang object.
*
* @param DoctrineDBALConnection $connection
* A DBAL connection.
*/
public function __construct(Connection $connection) {
$this->connection = $connection;
}
// ...
}
Then you can achieve this by using the @dbal_connection
service in your services.yml file.
services:
hooha.fizzwang:
class: HoohaWhizzyFizzwang
arguments: ['@dbal_connection']
To connect to other than the default database, define your own service like so (connects to $databases['migrate']
:
services:
dbal_connection.migrate:
factory: dbal_connection_factory:get
arguments: ['migrate']
Known issues
Please note that table-prefixing isn't supported by DBAL, so you will need to make sure that your tests only write to the prefixed table ($this->getDatabasePrefix()
) and not the base installation.
Please use the issue queue to report any problems.
Installation
You must use composer to install this modulecomposer require "drupal/dbal"