Спасибо за подсказку!
Хотя у меня получилось немного по иному
Я передавал список полей в конструкторе:
Код:
$ModelSubregion = new Model_Subregion( '', array( 'overriden_list_columns' => array( 'id', 'name') ) );
Сохранял этот параметр м переопредел метод list_columns :
Код:
class Model_Common extends ORM //Model
{
protected $overriden_list_columns = '';
public function __construct( $id = NULL, $parameters= array() )
{
if ( !empty($parameters['overriden_list_columns']) ) {
$this->overriden_list_columns= $parameters['overriden_list_columns'];
}
parent::__construct();
}
public function list_columns() {
if ( empty($this->overriden_list_columns) ) {
return parent::list_columns();
}
$current_list_columns= $this->_db->list_columns( $this->_table_name );
foreach( $current_list_columns as $key=> $current_column ) {
if ( !in_array($current_column['column_name'], $this->overriden_list_columns) ) {
unset( $current_list_columns[$key] );
}
}
return $current_list_columns;
}
Я так понял что список полей создается ДО вызова метода find_all - позтому м пришлось передавать его в конструкторе...