有没有办法将默认范围添加到基于Zend_Db_Table_Abstract的模型。
我希望能够查询一些模型,并将某些条件视为默认值。
e.g。
答案 0 :(得分:0)
在从数据库适配器检索行之前,您可以覆盖Zend_Db_Table_Abstract:: _fetch()
方法并修改其中生成的Zend_Db_Table_Select
。据我所知,fetch*
中的所有find()
方法和Zend_Db_Table_Abstract
归结为此通用行检索方法(自然除了Zend_Db_Table_Abstract::fetchNew()
之外),因此修改后的代码将会每次从数据库中检索行时都会调用它。
/**
* Support method for fetching rows.
*
* @param Zend_Db_Table_Select $select query options.
* @return array An array containing the row results in FETCH_ASSOC mode.
*/
protected function _fetch(Zend_Db_Table_Select $select)
{
$select->where('deleted = false')->order('name asc');
return parent:: _fetch($select);
}