Jak přidat do nettrine/orm více databází

aliamjid
Člen | 8
+
0
-

Ahoj, potřeboval bych zjistit jak do Nettrine přidat více připojení k databázi.

		default:
			host: localhost
			user: ali
			password: root
			dbname:
			driver: 'pdo_mysql'
		admin:
			host: localhost
			user: root
			password:
			dbname:
			driver: 'pdo_mysq

Čekal bych, že toto bude fungovat

v Nettrine\DBAL\DI\DbalExtension je toto a jelikož to přijíma array tak doufám, že to jde.

	'connection' => Expect::array()->default([
				'driver' => 'pdo_sqlite',
				'types' => [],
				'typesMapping' => [],
			]),

Editoval aliamjid (18. 7. 2019 21:58)

nightfish
Člen | 518
+
0
-

aliamjid napsal(a):

Ahoj, potřeboval bych zjistit jak do Nettrine přidat více připojení k databázi. @Felix

README se píše:

At this time we support only 1 connection, the default connection. If you need more connections (more databases?), please open an issue or send a PR. Thanks.

Existuje na to otevřený PR

…takže zatím to nejspíš nejde.

aliamjid
Člen | 8
+
0
-

Díky, moje chyba nepřečtl jsem to pořádně

nightfish napsal(a):

aliamjid napsal(a):

Ahoj, potřeboval bych zjistit jak do Nettrine přidat více připojení k databázi. @Felix

README se píše:

At this time we support only 1 connection, the default connection. If you need more connections (more databases?), please open an issue or send a PR. Thanks.

Existuje na to otevřený PR

…takže zatím to nejspíš nejde.

Felix
Nette Core | 1245
+
+1
-

Ahoj @aliamjid @nightfish.

Aktualne Nettrine nepodporuje vice pripojeni, ani to nemam rozpracovane. Je tam otevreny PR, ale vyzaduje to daleko vice prace a chce to poradne rozmyslet. Ovlivunuje to totiz skoro vsechny vymozenosti jako Tracy panel, CLI commandy nebo autowiring.

Doporucuju to zatim obejit nejakym workaroundem, pripadne mit jenom vice connection a jenom 1 hlavni entity manager.

Felix
Nette Core | 1245
+
0
-

V nove verzi Nettrine je pridana podpora pro vice databazi.

Priklad z https://github.com/…octrine.neon

# ======================================
# Extensions ===========================
extensions:
	console: Contributte\Console\DI\ConsoleExtension(%consoleMode%)

	nettrine.dbal: Nettrine\DBAL\DI\DbalExtension
	nettrine.orm: Nettrine\ORM\DI\OrmExtension

	nettrine.fixtures: Nettrine\Fixtures\DI\FixturesExtension
	nettrine.migrations: Nettrine\Migrations\DI\MigrationsExtension

nettrine.dbal:
	debug:
		panel: %debugMode%

	connections:
		default:
			driver: %postgres.driver%
			host: %postgres.host%
			port: %postgres.port%
			dbname: %postgres.dbname%
			user: %postgres.user%
			password: %postgres.password%
			charset:  UTF8
			serverVersion: 15.0.0

		second:
			driver: %mariadb.driver%
			host: %mariadb.host%
			port: %mariadb.port%
			dbname: %mariadb.dbname%
			user: %mariadb.user%
			password: %mariadb.password%
			charset:  UTF8
			serverVersion: 10.10.0

nettrine.orm:
	managers:
		default:
			connection: default
			mapping:
				App:
					type: attributes
					dirs: [%appDir%/Domain/Database]
					namespace: App\Domain\Database
		second:
			connection: second
			mapping:
				App:
					type: attributes
					dirs: [%appDir%/Domain/Database]
					namespace: App\Domain\Database

nettrine.fixtures:
	paths:
		- %appDir%/../db/Fixtures

nettrine.migrations:
	directories:
		DB\Migrations: %appDir%/../db/%migration.db%
	manager: %migration.manager%