Skip to content

配置项

free2one edited this page Jul 13, 2023 · 1 revision

Hyperf-Doctrine支持多库配置,并且使用default作为默认配置项。

return [  
	'default' => [  
		'configuration' => [  
			'paths' => [BASE_PATH . '/app'],  
			'isDevMode' => false,  
			'proxyDir' => BASE_PATH . '/runtime/doctrine-orm',  
			'cache' => [  
				'class' => Hyperf\Doctrine\Cache\CacheItemPool::class,  
				'constructor' => [  
					'config' => [  
						'driverName' => 'default',  
						'ttl' => 60 * 60 * 24,  
					],  
				],  
			],  
			'metadataCache' => null,  
			'queryCache' => null,  
			'resultCache' => null,  
			'filters' => [  
			],  
			'listeners' => [  
			],  
		],  
		'connection' => [  
			'driverClass' => Hyperf\Doctrine\DBAL\Driver\PDO\MySQL\HyperfDatabaseDriver::class,  
			'wrapperClass' => Hyperf\Doctrine\DBAL\HyperfDatabaseConnection::class,  
			'pool' => 'default',  
		],  
	],  
];

下面我们将针对配置项逐一进行介绍

  • configuration
    • paths:实体存储的路径。
    • isDevMode:开发模式,生产环境请务必设置为false
    • proxyDir:代理类生成目录,默认为项目下runtime/doctrine目录。
    • cache:缓存处理类,若未对metadataCachequeryCacheresultCache进行设置,则默认使用相同缓存实例进行存取。目前已适配Hyperf的缓存组件(hyperf/cache),支持用户自定义缓存处理类,对应类需实现Psr\Cache\CacheItemPoolInterface接口。
      • constructor.config.driverName:对应heyperf/cache配置文件的一级键名,建议为Doctrine单独设置配置项。
      • constructor.config.ttl:缓存失效时间,单位秒。
    • metadataCache:元数据缓存处理类,未设置时默认使用cache配置实例。
    • queryCache:查询缓存处理类,未设置时默认使用cache配置实例。
    • resultCache:结果缓存处理类,未设置时默认使用cache配置实例。
  • connection
    • driverClass:驱动类设置,默认实现基于hyperf/database
    • wrapperClass:连接类设置。
    • pool:对应hyperf/database配置文件的一级键名。
Clone this wiki locally