Výběr databáze podle domény

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

Ahoj,

řeším takový problém, mám více webů, všechny běží na jedné aplikaci, ale každý má svojí databázi. Chtěl bych, aby nějak pěkně přepínalo na základě domény se vybrala správná db.

Jsem trochu bezradný – parametry připojení k db se načítají z config.neon.

	parameters:
		database:
			driver: mysql
			host: localhost
			dbname: dbname
			user: user
			password: xxx

Stačilo by měnit to dbname ale problém je, že se nemohu dostat k Nette\Http\Request.

Peetee
Člen | 75
+
0
-

Už jsem to částečně vyřešil – pomocí https://doc.nette.org/cs/configuring#…, tedy úpravy configu na:

	web:
		class: myWeb

	database:
		class: Nette\Database\Connection
		factory: @web::getDatabaseService

Ve tříde myWeb rozhoduji o tom, jaká doména se načetla a na základě toho vrátí fce getDatabaseService instanci Nette\Database\Connection. Problém je v tom, že mi při tomto nastavení zmizí panel z debug bar.

J4rda
Člen | 2
+
0
-

Mohl by jsi to popsat podrobněji? Jsem úplný nováček v Nette a potřeboval bych po načtení stránky zobrazit seznam databází (na základě domény také), pak pokud si jednu vyberu, zobrazit další její parametry (metadata).