CodeIgniter: проверка формы с помощью многомерных данных POST

Итак, фреймворком является CodeIgniter 2.0.2. У меня есть форма, в которой есть группы полей, соответствующие строкам в базе данных. Имена полей имеют следующий формат:

opt[0][foo]
opt[0][bar]
opt[1][foo]
opt[1][bar]
etc...

Индекс (1,2 и т. Д.) Не соответствует идентификаторам строк в базе данных, это просто способ разбить группы полей. В индексе могут быть пробелы, поскольку пользователи могут добавлять и удалять произвольное количество групп полей. Все группы идентичны, то есть они содержат точно такой же набор полей с одинаковыми именами второго уровня.

Я хочу иметь возможность использовать библиотеку проверки CodeIgniter для проверки формы и (p) повторного заполнения при необходимости. Я нашел множество сообщений (в дополнение к отличному руководству пользователя CI) о предварительном заполнении, и я знаю, как начать работу с повторным заполнением в целом. Однако я впервые Мне пришлось попробовать это с индексированными именами полей, как указано выше. Я пробовал следующее, и это не сработало:

array(
    'field' => 'opt[][foo]',
    'label' => 'Foo',
    'rules' => 'required'
)

Полагаю, я просто слишком надеялся, а CodeIgniter не поддерживает то, что мне нужно. Расширение существующей библиотеки проверки форм - это вариант, поэтому, если кто-то был в такой же ситуации и может дать несколько советов, которые были бы очень кстати.

ОБНОВЛЕНИЕ:

Немного дополнительной информации, я Я также пробовал проверить специально проиндексированное поле (см. ниже), и это тоже не сработало ... Насколько я понимаю, многомерная проверка должна работать в конкретном случае:

array(
    'field' => 'opt[0][foo]',
    'label' => 'Foo',
    'rules' => 'required'
)
8
задан Endophage 24 May 2011 в 21:51
поделиться