pripojeni na 2 database pomoci neonu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
krcmar
Člen | 17
+
0
-

ahoj, snazim se tu jeden projekt prehodit z dibi na Database, ale narazil jsem na problem, ze se neumim pomoci neonu pripojit ke 2 ruznym db

pouzil jsem posledni sandbox jako start

v neonu mam

<?php
		database:
			class: Nette\Database\Connection
			arguments: ['mysql:host=localhost;dbname=db1', 'root', 'heslo1']
#			arguments: ['mysql:host=localhost;dbname=db2', 'root', 'heslo2']
?>

v modelu

<?php
	public $database;

	public function __construct(Nette\Database\Connection $database) {
		$this->database = $database;
	}
?>

dekuji TH

Filip Procházka
Moderator | 4668
+
0
-

To takhle nefunguje :)

services:
	database:
		class: Nette\Database\Connection
		arguments: ['mysql:host=localhost;dbname=db1', 'root', 'heslo1']
	database2:
		class: Nette\Database\Connection
		arguments: ['mysql:host=localhost;dbname=db2', 'root', 'heslo2']

	articles:
		class: ArticleModel
		arguments: [@database, @database2]
use Nette\Database\Connection;

class ArticleModel extends Nette\Object
{
	/** @var Connection */
	public $database;

	/** @var Connection */
	public $database2;

	public function __construct(Connection $database1, Connection $database1)
	{
		$this->database = $database;
		$this->database2 = $database2;
	}
}
nanuqcz
Člen | 822
+
0
-

Ahoj, a s Dibi se podobným způsobem (jak psal krcmar v prvním příspěvku) připojit na 2 databáze jde? (jsem jen zvědavý :-) )

Filip Procházka
Moderator | 4668
+
0
-

dibi umí držet několik spojení a pak je vybírat pomocí getConnection, ale nenapadá mě jak to takhle zapsat. Myslím, že to nejde.

Respektive, nejde to zapsat pod jednu službu. Címž by to ztratilo význam, protože by to nešlo předávat dalším službám zvlášť.

Editoval HosipLan (12. 7. 2011 16:54)

krcmar
Člen | 17
+
0
-

dekuji za radu, slape to jak ma !