Русскоязычный форум, посвященный фреймворку Kohana http://forum.kohanaframework.su/ |
|
В запросе указать только нужные поля http://forum.kohanaframework.su/viewtopic.php?f=31&t=740 |
Страница 1 из 1 |
Автор: | mstdmstd [ 29 авг 2013, 12:29 ] |
Заголовок сообщения: | В запросе указать только нужные поля |
Всем привет, Выбирая данные из таблицы с большим количеством полей я хочу уменьшить число выходных полей Я пишу: Код:
Но в запросе вижу, что поля в списке добавляются к выходным полям а не замещают их. А как правильно заместить все поля на нужные мне ? |
Автор: | WinterSilence [ 29 авг 2013, 14:25 ] |
Заголовок сообщения: | Re: В запросе указать только нужные поля |
либо переопределять $_table_columns , хранящую список колонок таблицы http://kohanaframework.org/3.3/guide-ap ... le_columns либо делать по аналогии с http://kohanaframework.org/3.3/guide-api/ORM#count_all я делаю два набора значений $_table_columns : короткое и полное, по умолчанию используется сокращенный набор полей, ну и через самописный меток переключаю их: $model->short_list(FALSE\TRUE) |
Автор: | mstdmstd [ 29 авг 2013, 17:13 ] |
Заголовок сообщения: | Re: В запросе указать только нужные поля |
Спасибо за подсказку! Хотя у меня получилось немного по иному Я передавал список полей в конструкторе: Код:
Сохранял этот параметр м переопредел метод list_columns : Код:
Я так понял что список полей создается ДО вызова метода find_all - позтому м пришлось передавать его в конструкторе... |
Автор: | WinterSilence [ 29 авг 2013, 21:39 ] |
Заголовок сообщения: | Re: В запросе указать только нужные поля |
списки полей надо прописывать в моделях при их создании иначе каждый раз будет лишний запрос в базу для получения описания полей https://github.com/WinterSilence/kohana ... es/ORM.php либо кешировать эти значения(в коде сейчас костыль дополнительный для принудительного сбора данных), но лучше все-таки явно прописывать |
Автор: | mstdmstd [ 30 авг 2013, 10:26 ] |
Заголовок сообщения: | Re: В запросе указать только нужные поля |
Да в трассировке куча запросов вида : Код:
тут нашел описание решения этой проблемы http://site-konstruktor.com.ua/cache-table_columns-in-orm-kohana-3_3 Я так понял необходимые поля должны быть описаны полностью ? И еще подскажите а как вы задаете переключатель если нужен разный набор полей ? В конструкторе как сделано у меня? |
Автор: | WinterSilence [ 01 сен 2013, 23:10 ] |
Заголовок сообщения: | Re: В запросе указать только нужные поля |
mstdmstd> либо конструктор переопределить(но лучше сделать как у меня), либо несколько моделей сделать(полную\краткую) |
Страница 1 из 1 | Часовой пояс: UTC + 4 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |