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

Вопрос по Kohana ORM - join
http://forum.kohanaframework.su/viewtopic.php?f=31&t=704
Страница 1 из 1

Автор:  podpole [ 25 июл 2013, 02:05 ]
Заголовок сообщения:  Вопрос по Kohana ORM - join

Наткнулся на один вопрос, ответ на который не смог найти на форуме (точнее как - предлагается решать вопрос квери билдером, а хотелось бы соблюсти стиль и везде использовать ORM).
Допустим у меня есть 2 таблицы: posts и users, в обеих таблицах есть некоторые поля с идентичными именами (id, image...).
Так вот, если я связываю через join эти 2 таблицы, то я могу получить только 1 значение (к какой модели изначально идет обращение, то значение и получаю) - второе значение получить не получается. В чистом SQL можно написать например SELECT users.image AS avatar и тогда я обращаясь крезультату смогу запросить картинку поста и пользователя. Как сделать аналогичным образом в ORM - не понятно.
Кто нибудь сталкивался с подобной проблемой?

Автор:  arhont [ 25 июл 2013, 03:05 ]
Заголовок сообщения:  Re: Вопрос по Kohana ORM - join

Надо связать таблицы, по одному из четырёх принципов и выводить через with('имя таблицы'). Если без with то будет 2 запроса. Вроде тут подробнее расписано как связывать таблицы:
http://kohana3.ru/module/orm

На деле я делаю это через билдер или чистом sql. "Так будет чище"...

Автор:  WinterSilence [ 25 июл 2013, 15:36 ]
Заголовок сообщения:  Re: Вопрос по Kohana ORM - join

podpole select() метод позволяет добавлять алиасы

Автор:  nkl [ 30 июл 2013, 16:44 ]
Заголовок сообщения:  Re: Вопрос по Kohana ORM - join

Я лично после знакомства с MySQL View вообще не вижу смысла в костыленге джойнов через ORM. Используй виртульные таблицы MySQL и будет тебе счастье. Плюс, использование виртуальных таблиц делает БД более независимой от приложения её использующего.

Автор:  WinterSilence [ 30 июл 2013, 23:32 ]
Заголовок сообщения:  Re: Вопрос по Kohana ORM - join

о MySQL View:
минусы:
1. MySQL View поддерживается не на всех хостингах
2. Чем больше специфики подобной, тем сложнее переносить проект на другую платформу
3. Проблемы с трассировкой данных

плюсы:
1. Быстрее работает
2. В большинстве случаев разработка таких решений быстрее

Автор:  nkl [ 01 авг 2013, 14:14 ]
Заголовок сообщения:  Re: Вопрос по Kohana ORM - join

К плюсам забыли отнести еще и большую независимость от приложения. Все джойны мускулу уже сделал за вас. К минусам я бы отнес еще один. Давеча хлебнул его сполна. Меньше гибкости, приходится для каждой маломальской фигни создавать новый вид.

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