Всем привет!
Подскажите, как можно реализовать порядковый номер во вьюс(тип отображения таблица), при условии, что к таблице прикручена пользовательская фильтрация по полю. Использовал global counter, но после фильтрации он показывает текущую позицию строки, а не ту, что была до фильтрации. Иными словами что я хочу: есть таблица из 30 позиций например. Я ввёл фильтрацию мне показали одну позицию, но порядковый номер должен сохранится исходный, а не на основе текущих результатов(25ый например, а не первый, так как результат один).
Комментарии
Это что означает? Просто фильтр views? Контекстный? Раскрытый?
Что это в терминах друпала? Тип материала (весь целиком)?
Что есть "исходный порядковый номер"? Если это некое имманентное свойство ноды, то нужно просто создать поле и вбить туда этот номер.
1. exposed filter + Views Selective Filters
2. 30 разных нод. (у меня это турнирная таблица команд).
3. Исходный порядковый - это значит, что есть таблица, есть команда, которая например занимает пятую строчку, у нее номер пять. Я фильтрую таблицу раскрытым фильтром(см пункт 1), ввожу название команды под номером 5, и она остается одна(то есть осуществил в таблице поиск команды), только номер у нее теперь первый(потому что единственный вариант), а мне нужно чтобы у нее сохранялся тот номер, который был в фактическом рейтинге, а не порядковый номер текущей выборки.
А почему именно эта команда занимает именно пятую строчку? Если объективных критериев нет, то есть номер в рейтинге является имманентным свойством команды, то нужно просто добавить в ноды поле "номер в фактическом рейтинге", и дело в шляпе.
Views работает только с одной выборкой - текущей - и понятия не имеет (да и не может знать) какой индекс имела та или иная строка в какой-то другой давно забытой выборке.
рейтинг формируется по значению одного поля в ноде (сортировка по убыванию балла).
Я вижу два способа решения задачи:
1. Добавляется поле "рейтинг" в ноду. Оно может заполняться/изменяться автоматически при любых изменениях в исходных данных, через Rules или просто на хуках.
2. Views всегда возвращает полную турнирную таблицу, а дальнейшая фильтрация (выкидывание из массива result ненужных значений) производится программно в хуке views_pre_render. Тогда в массиве можно сохранить исходные индексы строк, какие они были в полной таблице.
Благодарю за ответ! поковыряю данный хук.
Я там ошибся - hook_views_pre_render я имел в виду.