Показать в профилю позицию во views

Аватар пользователя henzel henzel 17 сентября 2013 в 11:00

Коллеги, подскажите, пожалуйста. Вывожу во views список профилей пользователей сайта. Соответственно, они распределяются по порядку и имеют порядковый номер. Подскажите, пожалуйста, есть ли возможность вывести этот порядковый номер в профиле пользователя? Например, если пользователь в списке профилей на месте №6, то показывать в его профиле: "Позиция: 6"

0 Thanks

Комментарии

Аватар пользователя validoll validoll 17 сентября 2013 в 11:37

Чтобы не гонять вьюху при каждом просмотре, лучше записывать позицию куда-нибудь (в поле, например), и по крону обновлять позиции из вьюхи. Либо использовать кеш вьюхи, чтобы минимизировать нагрузку, но это может быть более тяжелым решением при большом количестве пользователей. А далее, если это поле, то просто выводить его, либо, если это значение непосредственно из вьюхи, то вызывать вьюху программно, искать в результатах пользователя, и вручную выводить номер позиции там, где нужно.

Аватар пользователя henzel henzel 17 сентября 2013 в 13:16
validoll wrote:

Чтобы не гонять вьюху при каждом просмотре, лучше записывать позицию куда-нибудь (в поле, например), и по крону обновлять позиции из вьюхи. Либо использовать кеш вьюхи, чтобы минимизировать нагрузку, но это может быть более тяжелым решением при большом количестве пользователей. А далее, если это поле, то просто выводить его, либо, если это значение непосредственно из вьюхи, то вызывать вьюху программно, искать в результатах пользователя, и вручную выводить номер позиции там, где нужно.

validoll, спасибо! Попробую вывести программно

Аватар пользователя henzel henzel 17 сентября 2013 в 13:20
ХулиGUN wrote:

вот как же ж любят все шифроваться... А потом на половине сайтов весь функционал сделан через жопу. Вы можете прямо сказать, что это и для чего? По какому принципу пользователи во вьюхе сортируются?

ХулиGUN, никакого шифрования. Напишешь подробнее - не читают и ругаются, что много воды.
Вывожу профили через views. Сортировка по количеству userpoints (чем больше баллов, тем выше позиция). По сути, это что-то вроде рейтинга. Пользователи делают действия на сайте - поднимаются выше в списке профилей. Нужно показывать текущую позицию в профиле пользователя. Действующий пример - список фри-лансеров и позиция в профиле на http://fl.ru
Нужно добавить, что это не сделать через отдельное поле, конечно же, потому что это должно работать автоматически
Есть предложения?

Аватар пользователя validoll validoll 17 сентября 2013 в 13:23
"henzel" wrote:

Нужно добавить, что это не сделать через отдельное поле, конечно же, потому что это должно работать автоматически

"validoll" wrote:

записывать позицию куда-нибудь (в поле, например), и по крону обновлять позиции из вьюхи