Создание объекта результата Kohana ORM, подходящего для помощника RSS - PullRequest
0 голосов
/ 13 декабря 2011

Как сделать возвращаемый объект результата ORM в Kohana подходящим для использования в параметре items помощника RSS-канала?

Например, если вы хотите добавить все мои пользовательские сообщения в ленту новостей.

$posts = ORM::factory('posts')->find_all(); 

Параметр items, используемый в feed::create(), должен быть многомерным массивом.Есть ли простой способ отформатировать возвращаемый объект в виде многомерного массива в правильном формате?

Вот что я получил до сих пор:

$items = array(); 
$info = array( 'title' => 'test feed' ); 
$posts = ORM::factory('post')->find_all(); 

foreach ($posts as $post) 
{ 
    $item = array('title' => $post->title, 
                    'summary' => $post->description, 
                    'pubDate' => $post->date); 
    $items[] = $item; 
} 

$this->request->response = Feed::create($info, $items);

1 Ответ

0 голосов
/ 13 декабря 2011

Я бы оставил ORM и создал бы запрос с помощью Query Builder - он вернет массив в нужном вам формате:

$info = array( 'title' => 'test feed' ); 
$posts = DB::select('title', array('description', 'summary'), array('date', 'pubDate'))->from('posts)->execute()->as_array();

$this->request->response = Feed::create($info, $posts);
...