Nette migrace z 2.2 na 2.3

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

Ahojte. Rad bych pomoc pri migraci na 2.3. V 2.2 vypadal muj neon soubor s definici komponent takto:

# components factories.
factories:
	def1:
		class: web\lib\components\Component1(@service, %variable%, @configuration)

Po migraci na 2.3 se generuje chyba:

Nette\InvalidStateException → Found sections ‚factories‘ in configuration, but corresponding extensions are missing

Jak by prosim bylo nutne modifikovat tento neon? Vim, ze se factories staly deprecated, ale predpokladam, ze nejaka forma zpetne kompatibility byla zachovana?

Editoval DavidTheNewbie (24. 2. 2017 9:33)

CZechBoY
Člen | 3608
+
+1
-

https://forum.nette.org/…grace-na-2-2 tady se to myslim vyřešilo ne?
@DavidMatějka ti doporučoval generované továrny

btw. jak tuhle službu používáš?

Nepomohl by ti tenhle zápis? Ten druhej má výraz factory tak bych tipoval, že by ti mohl pomoct.

services:
    database: Nette\Database\Connection(%dsn%, %user%, %password%)

# nebo ve dvou řádcích:
    database:
        create: Nette\Database\Connection(%dsn%, %user%, %password%)

# nebo ve třech řádcích :-)
    database:
        class: Nette\Database\Connection
        arguments: [%dsn%, %user%, %password%]

Editoval CZechBoY (24. 2. 2017 9:48)

DavidTheNewbie
Člen | 79
+
0
-

CZechBoY napsal(a):

https://forum.nette.org/…grace-na-2-2 tady se to myslim vyřešilo ne?
@DavidMatějka ti doporučoval generované továrny

btw. jak tuhle službu používáš?

Jde o to, ze pri prechodu z 2.1 na 2.2 jsem se i tak obesel bez nutnosti generovani tovaren mimo neon soubor, tj. stacil pouze zapis v neon souboru a v momente, kdy LATTE narazilo na {control componentName}, vygenerovalo na jeho zaklade funckni PHP kod. Toto bych rad zachoval i pri prechodu na verzi 2.3.

CZechBoY
Člen | 3608
+
+1
-

Zkus tu factory, viz úprava mýho prvního příspěvku.