Konfigurace pro načtení Doctrine pomocí nového skvělého konfigurátoru a DI

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

Konfigurátor v nové verzi je prostě pecka nejvetší, velký díky.
Tady jsem přepsal svojí konfiguraci doctrine do config.neon
Tak pro ukázku:

common:
	services:
		doctrineConfig:
			class: Doctrine\ORM\Configuration
			setup:
				- setProxyDir(%doctrine.proxyDir%)
				- setProxyNamespace(%doctrine.proxyNamespace%)
				- setAutoGenerateProxyClasses(%doctrine.autoGenerateProxyClasses%)
				- setMetadataCacheImpl
				- setQueryCacheImpl
				- setMetadataDriverImpl

		_doctrineDummyConfig:
			class: Doctrine\ORM\Configuration
			autowired: no

		doctrineChainDriver:
			class: Doctrine\ORM\Mapping\Driver\DriverChain
			setup:
				- addDriver(@_doctrineDummyConfig::newDefaultAnnotationDriver(%doctrine.entityDir%), 'Entities')

		doctrineEventManager:
			class: Doctrine\Common\EventManager
			setup:
				- addEventSubscriber(Doctrine\DBAL\Event\Listeners\MysqlSessionInit('utf8', 'utf8_czech_ci'))
				- addEventSubscriber(\Gedmo\Timestampable\TimestampableListener())

		doctrineCache:
			class: Doctrine\Common\Cache\ArrayCache

		entityManager:
			class: Doctrine\ORM\EntityManager
			factory: Doctrine\ORM\EntityManager::create(%doctrine.connection%)


	parameters:

		doctrine:
			entityDir:      %appDir%/Entities
			proxyDir:       %appDir%/Entities/Proxies
			proxyNamespace: Entities\Proxies
			autoGenerateProxyClasses: true
			connection:
				driver:   pdo_mysql
				user:     root
				password: xxx
				dbname:   cms
				host:     mysql.devel.dev



production < common:
	parameters:
		doctrine:
			autoGenerateProxyClasses: false
			connection:
				driver:   pdo_mysql
				user:     root
				password: xxx
				dbname:   cms
				host:     mysql.prod.dev
	services:
		doctrineCache:
			class: Kdyby\Doctrine\Cache(@cacheStorage)



development < common:
	parameters:
		doctrine:
			connection:
				user:     cms
				password: cms
				dbname:   cms_development
				host:     mysql.devel.dev
	services:
		doctrine2Panel:
			class: Nella\Doctrine\Panel
			factory: Nella\Doctrine\Panel::register()
			setup:
				- @doctrineConfig::setSQLLogger(@self)
			run: true

Editoval jasir (23. 12. 2011 3:18)

Filip Procházka
Moderator | 4668
+
0
-

Kdyby někdo měl zájem udělat to samé, pomocí compilerů, tak pokračujte zde: https://github.com/…trinePackage

Můj config vypadá takto:

dbal:
	user: root
	password: heslo

:)

David Grudl
Nette Core | 8111
+
0
-

Ve finále compiler to může načíst jako NEON, viz https://forum.nette.org/…racni-soubor