Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Вытащить последнею заявку юзера через две связанные таблицы
http://forum.kohanaframework.su/viewtopic.php?f=33&t=750
Страница 1 из 1

Автор:  Manyahin [ 15 сен 2013, 14:25 ]
Заголовок сообщения:  Вытащить последнею заявку юзера через две связанные таблицы

Мне надо вывести доставленные письма, которые хранятся в таблице distributions. В этой таблице присутствует user_id который ссылается на юзера, которому было отправлено письмо. Т.е. в моделе Model_Distribution есть связь с юзером.

protected $_belongs_to = array('user' => array());

Но кроме почты и юзера, мне надо вывести время последней заявки юзера. Заявки находятся в таблице transactions и связаны по user_id. Как мне добавить связь с моделью Transaction из модели Distribution.

В конце, мне нужно получить последнюю заявку пользователя, вместе с юзером и его письмом соответственно.

Я начала делать как-то странно, добавил функцию поиска последней заявки в модель в Distributions. Но, что бы ее вызвать, мне прийдется перебирать всех юзеров, что я вытаскиваю по ORM. И самостоятельно генерировать массив на вывод, как можно это сделать одним ORM?

Автор:  WinterSilence [ 15 сен 2013, 17:30 ]
Заголовок сообщения:  Re: Вытащить последнею заявку юзера через две связанные табл

SELECT * FROM Distributions WHERE user_id=123 ORDER BY id DESC LIMIT 0, 1

Автор:  Manyahin [ 15 сен 2013, 18:01 ]
Заголовок сообщения:  Re: Вытащить последнею заявку юзера через две связанные табл

Допустим. Я использую запрос на выборку последней транзакции в виде функции, которая находится в модели. Но юзеров достаю через ORM и сразу перекидываю в View. Во View мне доступен айди пользователя.

Как мне вызвать функцию из модели на получение последней транзакции, или куда ее еще запихнуть, что бы я смог вызвать ее из View?

Автор:  WinterSilence [ 15 сен 2013, 18:50 ]
Заголовок сообщения:  Re: Вытащить последнею заявку юзера через две связанные табл

передать модель в вид например

Автор:  Manyahin [ 15 сен 2013, 19:08 ]
Заголовок сообщения:  Re: Вытащить последнею заявку юзера через две связанные табл

Как это сделать?

Автор:  Manyahin [ 15 сен 2013, 19:36 ]
Заголовок сообщения:  Re: Вытащить последнею заявку юзера через две связанные табл

Оказывается вот так
Код:
$model = Model::factory('mails');
$result = $model->get_function($user_id);

Автор:  WinterSilence [ 15 сен 2013, 20:11 ]
Заголовок сообщения:  Re: Вытащить последнею заявку юзера через две связанные табл

wtf? ))) передача осуществляется также как и с остальными данными

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/