【问题标题】:Load different Database Symfony2加载不同的数据库 Symfony2
【发布时间】:2014-12-05 19:59:50
【问题描述】:
如何为生产和开发环境加载不同的数据库?
在 parameters.yml 我有主数据库配置,但我不知道如何添加具有不同参数的 dev 数据库。
我正在 Google 上查找此内容,但找不到任何帮助。
也许是 config_dev.yml 和 config_prod.yml?但我不知道该怎么做。
任何帮助将不胜感激。谢谢。
【问题讨论】:
标签:
php
database
symfony
environment-variables
【解决方案1】:
我会这样做:
文件层次结构:
1)parameters.yml——常用参数
2) 创建parameters_dev.yml - 仅开发数据库连接参数
3) 创建parameters_prod.yml - 仅生产数据库连接参数
在配置文件的头部:
1)config.yml
imports:
- { resource: parameters.yml }
2)config_dev.yml
imports:
- { resource: config.yml }
- { resource: parameters_dev.yml }
3)config_prod.yml
imports:
- { resource: config.yml }
- { resource: parameters_prod.yml}
【解决方案2】:
您可以使用Parameters 轻松存储特定于环境(或特定于系统)的变量。
例如,在config/parameters.yml:
parameters:
parameter_name: some_value
在config.yml,在顶部:
imports:
- { resource: parameters.yml }
然后,您可以使用语法"%parameter_name%" 替换一个参数,该变量的值应该出现在该位置。