В контроллере есть список кастомных записей. Они не выквериваются, а одна за другой создается пользователем.
Этот список выводится во вью так:
<apex:pageBlockTable value="{!records}" var="rec">
но первая колонка должна быть просто нумерция созданных записей от 1 до 10.
Как ее организовать?
сначала подумал что можно бы использовать VF переменные. Но в такой таблице нет репетора, в котором я бы мог инкриментировать VF переменную.
Получается нужно переменную подавать с контроллера.
Подумал, что в контроллер можно бы органзовать такую переменую, но отдельно от Листа ее не сделать, так как в pageBlockTable нужно подавать только одну переменную.
Остается делать только класс-обертку для моих записей, в который добавить это поле для нумерации, и уже Лист его экземпляров подавать в таблицу.
Но не уверен, что это оптимальный путь.
Мне тоже не нравятся представления table в Apex из-за того что нельзя контролировать каждую строчку во вью. Я предпочитаю делать все через apex:repeat и вставлять его в html table. В твоем случае тогда очень просто завести доп. переменную во вью и в теле apex:repeat выводить ее, а потом увеличивать на 1. В нете есть много примеров на эту тему.
То что ты придумал с оберткой конечно хороший вариант, но добавляет много лишнего кода как мне кажется.
Получается, что варианты нумерации это:
больше кода во Вью VS больше кода в контроллере.
в данном случае не требуется кастомизация дизайна, и я мне гораздо полезнее решить это в контроллере, да и список не больше 10 пунктов - маленький.
А ты попробовал все жк использовать +1 в странице ?
Имеете в виду вариант предложенный Дмитрием: инкриментируемая ВФ переменная и кастомная таблица? Нет пока не пробовал.
Попробуй, думаю ты удивишься :)