упс, немного не правильно назвал тему, надо так "как перенести $sort->link из контроллера в модель?"
–
посмотрел файл CSort.php но там не оказалось метода который перебирает массив указанных полей из $sort->attributes, пришлось делать самому, сейчас работает таким образом
в контроллере
$sort->attributes = array('id','title','content','create_date','status');
$sort_link = array(
'id'=>$sort->link('id'),
'title'=>$sort->link('title'),
'content'=>$sort->link('content'),
'create_date'=>$sort->link('create_date'),
'status'=>$sort->link('status'),
);
$this->render('list', array('model'=>$dataProvider->getData(), 'sort_link'=>$sort_link ) );
а в шаблоне Smarty принимаю так
<div id="sorter">
<ul>
<li>{$sort_link.id}</li>
<li>{$sort_link.title}</li>
<li>{$sort_link.create_date}</li>
<li>{$sort_link.status}</li>
</ul>
</div>
Но вот как из контроллера перенести в метод вот эту часть
$sort_link = array(
'id'=>$sort->link('id'),
'title'=>$sort->link('title'),
'content'=>$sort->link('content'),
'create_date'=>$sort->link('create_date'),
'status'=>$sort->link('status'),
);
и уже из контроллера принимать примерно так
$sort_link = News::SortLink();
но вот почему то так не работает
public function SortLink()
{
return array(
'id'=>$sort->link('id'),
'title'=>$sort->link('title'),
'content'=>$sort->link('content'),
'create_date'=>$sort->link('create_date'),
'status'=>$sort->link('status'),
);
}