Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 29 мар 2024, 12:52

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Рандомный вывод ORM
СообщениеДобавлено: 05 авг 2012, 17:25 
Не в сети
Новичок

Зарегистрирован: 30 апр 2012, 13:42
Сообщения: 24
Здравствуйте ,подскажите пожалуйста как можно вывести информацию из БД рандомно используя ORM.
Чтобы баннеры постоянно не повторялись. Причем выводились в разных местах согласно их позиции.

Таблица:
Код:
CREATE TABLE IF NOT EXISTS `ads` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `position` enum('top','right') NOT NULL,
  `img_url` char(64) NOT NULL,
  `url` char(64) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=5 ;


Код:
$ads=ORM::factory('ads')->find_all();

_________________
http://gilamov.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Рандомный вывод ORM
СообщениеДобавлено: 05 авг 2012, 20:04 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 12 фев 2012, 01:02
Сообщения: 462
Что-то вроде
->limit(20)
->order_by(DB::expr('RAND()'), NULL)
не подойдет ? Хотя RAND та еще штука тормозная. Записей много ?
И что такое "Причем выводились в разных местах согласно их позиции." ?

_________________
kohanaframework.su - обучение фреймворку Kohana


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Рандомный вывод ORM
СообщениеДобавлено: 05 авг 2012, 22:43 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 05 июн 2012, 03:08
Сообщения: 213
Вот здесь про выбор случайной записи почитать можно http://www.manhunter.ru/webmaster/411_v ... mysql.html
Как раз и про тормознутость RAND написано и выбрать подходящий вариант для себя. Думаю все равно через db::expr делать придется

_________________
http://de-en.info (работает на Kohana 3.3)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Рандомный вывод ORM
СообщениеДобавлено: 06 авг 2012, 00:33 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 12 фев 2012, 01:02
Сообщения: 462
По идее тех баннеров не так и много, может можно все записи вытащить, да массив перемешать и тянуть сколько надо.

_________________
kohanaframework.su - обучение фреймворку Kohana


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Рандомный вывод ORM
СообщениеДобавлено: 06 авг 2012, 03:27 
Не в сети
Новичок

Зарегистрирован: 30 апр 2012, 13:42
Сообщения: 24
Спасибо метод с RAND() подошел =)

_________________
http://gilamov.ru


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group