tiny ‘n’ smart
database layer

Odkazy: dibi | API reference

Oznámení

Omlouváme se, provoz fóra byl ukončen

getConnection a lazy initialization

před 10 lety

vlna
Člen | 34

Ahoj,
procetl jsem api, prohledal historii fora, ale nenasel odpoved na nasledujici:
Da se nejak udelat, abych na jednom miste definoval vlastnosti pripojeni k databazi – ale nepripojoval se – a na jinem miste, az pokud to v danem requestu budu potrebovat:
(1) vytvoril objekt db
(2) po dotazu se pripojil
?

Neco jako:

/* bootstrap.php */

//jenom nastavi

Dibi::setConnectionInfo(
    array(  'driver' => 'mysql', ... ), $sConnectionName
);


/* nekde v presenteru / controlleru / actionHandleru ... */

dibi::getConnection() //ziska objekt pro praci s db - jeste neni pripojeno
    ->query(...); //tady se pripojil

Jde mi hlavne o to oddeleni udaju o pripojeni a skutecneho pripojeni.
Diky

Editoval vlna (18. 5. 2009 13:38)

před 10 lety

vlki
Člen | 218

Direktiva configu lazy tohle umí zapnout. Viz api DibiConnection.

dibi::connect(array(
    'driver'   => 'mysql',
    'host'     => 'localhost',
    'username' => 'root',
    'password' => '***',
    'database' => 'test',
    'charset'  => 'utf8',
    'lazy'     => true, // zapnutí lazy připojení
)); // nepřipojí se

dibi::query(...); // teprve se připojí

před 10 lety

vlna
Člen | 34

vlki napsal(a):

Direktiva configu lazy tohle umí zapnout. Viz api DibiConnection.

Diky a sorry, tohle jsem bohuzel prehledl.