我正在使用application.ini在Zend 1.12中引导数据库设置和适配器
resources.db.adapter = "PDO_MYSQL"
resources.db.params.host = "server"
resources.db.params.port = "3310"
resources.db.params.username = "user"
resources.db.params.password = "pass"
resources.db.params.dbname = "dbname"
resources.db.params.charset = "utf8"
resources.db.isDefaultTableAdapter = true
但是,我在脚本中找不到默认适配器:
$db = Zend_Db_Table::getDefaultAdapter();
这是空洞的结果。
我必须在Bootstrap中使用init mentod才能使其工作:
protected function _initDbTable() {
$resource = $this->getPluginResource('db');
$adapter = $resource->getDbAdapter();
Zend_Db_Table::setDefaultAdapter($adapter);
}
有没有办法在application.ini中设置所有内容?
答案 0 :(得分:0)
你做得对。配置中的资源需要像您执行操作一样进行自举。 “::的Zend_Db_Table setDefaultAdapter($适配器);”因为那是“resources.db.isDefaultTableAdapter = true”的原因。
另见What is the "right" Way to Provide a Zend Application With a Database Handler