【发布时间】:2011-04-09 08:37:39
【问题描述】:
我正在使用带有 Zend 框架的模块化架构,并且我想使用模块特定的数据库配置,以便每个模块的模型都使用自己的数据库配置。
这是我的示例应用程序架构:
- 申请
- 模块
- 管理员
- 控制器
- 型号
- 数据库表
- Users.php
- 数据库表
- 观看次数
- 配置
- module.ini
- 管理员
- 配置
- application.ini
- 模块
从上述架构中,我有模块“admin”,我在 admin/configs/module.ini 中指定了它的数据库配置,例如:
resources.db.adapter = "pdo_mysql"
resources.db.params.host = "localhost"
resources.db.params.username = "*****"
resources.db.params.password = "*****"
resources.db.params.dbname = "********"
现在我想在“admin”模块的模型中使用这个配置。
仅供参考,我正在“admin”模块的控制器中实例化模型,例如:
$admin = new Admin_Models_DbTable_Users();
$admin_users = $admin->fetchUsers();
在“admin”模块的模型中,我正在执行如下查询:
public function fetchUsers()
{
$sql = "select * from users";
return $this->getAdapter()->fetchAll($sql, array(), Zend_Db::FETCH_OBJ);
}
如何在“admin”模块的数据库适配器中加载 admin/configs/module.ini 中的数据库配置,以便它使用该配置?我是否需要使用 Zend Registry 或在管理模块的引导文件中设置任何选项?
【问题讨论】:
标签: php zend-framework