2014-12-14 3 views
0

Например,kohana - truncating db results ORM перед переходом на просмотр

У меня есть ORM, как показано ниже.

$test = new Model_Test(); 
$test_result = $test->find_all(); 

foreach ($test_result as $tmp) : 

    // i would like to truncate the the $tmp->name and put it back to $test ORM like 

    $test->name = truncate($tmp->name, 20); 

endforeach; 

Я бы хотел обрезать результат ORM перед тем, как перейти к просмотру. Как мы можем сделать это?

Помогите оценить!

спасибо,

ответ

1

Это на самом деле довольно легко благодаря методу get() в модуле ORM Kohana в. У вас может быть сценарий так же просто, как

class Model_Test extends ORM 
{ 
    protected $_stringLength = 20; 

    public function get($column) 
    { 
     $value = parent::get($column); 

     if (is_string($value)) 
      return substr($value, 0, $this->_stringLength); 
     else 
      return $value; 
    } 
} 
+0

действительно потрясающий! это заслуживает тысячи очков. большое спасибо! – Norks

+0

Возможно, вы также должны проверить, что '$ column == 'name'' в противном случае это приведет к усечению значения каждого столбца. –