我正在尝试理解Zend框架是如何工作的。设计的模型是做这样的吗?我只有一个基本的设置,所以我可以在我的控制器中使用这样的东西:
$db->query($this->selectAll())
您能否举例说明如何在控制器上使用它?
class Country extends Zend_Db_Table
{
protected $_name = 'country';
public function selectAll()
{
return 'SELECT * FROM'.$this->_name.'';
}
}
最诚挚的问候!
答案 0 :(得分:3)
迂腐术语:Zend_Db_Table
是表示数据库表的类。这与MVC意义上的模型不相同。
我为Zend_Db
组件编写了很多文档,我没有将TABLE和模型视为同义词(许多框架都这样做)。
另请参阅我就此主题撰写的博客:
http://karwin.blogspot.com/2008/05/activerecord-does-not-suck.html
答案 1 :(得分:2)
Zend Models旨在链接到表格,并帮助您与表格进行交互。
class BugsProducts extends Zend_Db_Table_Abstract
{
protected $_name = 'bugs_products';
protected $_primary = array('bug_id', 'product_id');
}
$table = new BugsProducts();
$rows = $table->fetchAll('bug_status = "NEW"', 'bug_id ASC', 10, 0);
$rows = $table->fetchAll($table->select()->where('bug_status = ?', 'NEW')
->order('bug_id ASC')
->limit(10, 0));
// Fetching a single row
$row = $table->fetchRow('bug_status = "NEW"', 'bug_id ASC');
$row = $table->fetchRow($table->select()->where('bug_status = ?', 'NEW')
->order('bug_id ASC'));
中的更多信息