使用没有MVC的Zend Framework Db表

Stu*_*art 9 zend-framework zend-db-table zend-db

我试图使用Zend框架而不使用MVC结构,特别是Db_Table类.

我创建了几个代表我的数据库表的类,即

class DBTables_Templates extends Zend_Db_Table_Abstract  
{  
    protected $_name = "templates";  
}  
Run Code Online (Sandbox Code Playgroud)

当我尝试实例化这个类(它被包括在内)时,我收到以下错误:

致命错误:未捕获异常'Zend_Db_Table_Exception',消息'找不到DBTables_Templates的适配器'

有谁知道我如何为Db_Table要使用的类创建和包含数据库适配器?

任何指针都非常感谢!我使用的是最新版本的ZF.

Bil*_*win 15

您需要创建Zend_Db_Adapter,它是用于连接数据库的类.

$db = new Zend_Db_Adapter_Pdo_Mysql(array(
    'host'     => '127.0.0.1',
    'username' => 'webuser',
    'password' => 'xxxxxxxx',
    'dbname'   => 'test'
));
Run Code Online (Sandbox Code Playgroud)

或者您可以使用该factory()方法使实例化更具可配置性:

$db = Zend_Db::factory('Pdo_Mysql', array(
    'host'     => '127.0.0.1',
    'username' => 'webuser',
    'password' => 'xxxxxxxx',
    'dbname'   => 'test'
));
Run Code Online (Sandbox Code Playgroud)

http://framework.zend.com/manual/en/zend.db.html#zend.db.adapter.connecting

然后将此适配器对象指定给表类.至少有三种方法可以做到这一点:

http://framework.zend.com/manual/en/zend.db.table.html#zend.db.table.constructing