[Решено] Случайная сортировка Views и постраничный навигатор

Аватар пользователя shevgeny shevgeny 21 июня 2015 в 14:29

Есть представление со случайной сортировкой и постраничным выводом. Открываю представление и вижу на первой странице первую порцию материалов в случайном порядке. Перехожу на вторую страницу представления и вижу еще одну порцию материалов в случайном порядке, но среди них встречаются и материалы с первой страницы представления.
Как я понимаю, запрос случайных материалов происходит на каждой странице. Пробовал включать / отключать кэширование запросов, но результат один и тот же.
Кто-то как-то решал подобную задачу?

Комментарии

Аватар пользователя sas@drupal.org sas@drupal.org 21 июня 2015 в 20:28

Ну так логично - он случайно сортирует и показывает страницу которую запросили, проблемы - не вижу?!

Аватар пользователя Orion76 Orion76 21 июня 2015 в 21:53

Выборка с рандомной сортировкой с пагинацией(offset,limit) работает правильно..
При каждом запросе страницы выбирается offset+limit произвольных записей, и из этой выборки выводиться limit записей начиная с записи с номером offset.
где limit = кол-во записей на страницу, offset = произведение limit на порядковый номер страницы(т.е. количество записей на предыдущих страницах)

А вот если Вам необходима выборка, так сказать, с "псевдо" рандомной сортировкой с пагинацией, то это совсем другая история.

Задачка конечно довольно сложная но интересная, с точки зрения "поломать голову".. А оно Вам надо?
Такое ощущение, что что-то "спроектировано" не правильно.
Я конечно могу ошибаться, не зная всех условий задачи, поэтому опишите, пожалуйста, для чего это надо?

Аватар пользователя sas@drupal.org sas@drupal.org 22 июня 2015 в 7:02

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

Аватар пользователя shevgeny shevgeny 22 июня 2015 в 10:53

ХулиGUN wrote:
"<a href="mailto:sas@drupal.org">sas@drupal.org</a>" wrote:
остальные периодически периодически меняли вес по кругу - каруселькой

Но это ж не рандом?
Я реально не понимаю рандом с постраничной навигацией? Это ж нужна обоснованная необходимость... но пока у меня в голове не укладывается какая)))

Взгляните на рекомендованные видео в YouTube, на разного рода интернет-журналы. Это часто применяется. Конечно, это не рандом в чистом виде, а лишь эффект рандома. Запрашиваем рандомный список материалов и фиксируем их на определенное время. Делается это для "примерно равномерного" распределения внимания аудитории на все материалы. Конечно, задача нетривиальная и далеко не всегда целесообразная, но мне такое понадобилось. В философии вопроса разбираться совсем не обязательно Wink

Аватар пользователя shevgeny shevgeny 22 июня 2015 в 18:36

ХулиGUN wrote:
"shevgeny" wrote:
Взгляните на рекомендованные видео в YouTube, на разного рода интернет-журналы

На том же ютубе, не бесконечные прокрутки в рекомендациях
Хозяин - барин, так сказать, но так делать - неправильно. ИМХО

Как раз-таки в YouTube рекомендации бесконечные. Специально для вас снял демонстрацию — https://youtu.be/UPRnQI6wmuU

Аватар пользователя shevgeny shevgeny 22 июня 2015 в 19:20

ХулиGUN wrote:
"shevgeny" wrote:
Как раз-таки в YouTube рекомендации бесконечные. Специально для вас снял демонстрацию

Лучше б бенчмарк сделали своих рандомных выборок)))

А вы лучше бы по сути отвечали, а не разводили философию о том, как лучше Wink

Аватар пользователя t1mm1 t1mm1 23 июня 2015 в 16:03

На ютубе она очень даже не рандомная. Хотя она случайна по определенным критериям в определенный момент.

Кстати, бесконечная подгрузка - удобная штука в UI.