Обработка нескольких значений URL в CakePHP - PullRequest
0 голосов
/ 19 мая 2009

Я занимаюсь разработкой сайта с использованием фреймворка CakePHP. У меня есть форма, которая показывает список сущностей, с галочкой для каждой, что позволяет вам выбрать его. Затем вы нажимаете кнопку внизу формы с надписью «Изменить выбранное».

Мой обычный подход состоит в том, чтобы присвоить каждому входу флажка одно и то же имя (например, row_id) и использовать первичный идентификатор в качестве ввода value. Однако, когда вы отправляете форму, CakePHP, похоже, возвращает один значений флажка в контроллер в $this->params['url'], а не какой-либо список, как я ожидал.

Какие-нибудь советы о том, как правильно справиться с этим, чтобы я мог выяснить, какие строки отмечены галочкой?

1 Ответ

1 голос
/ 19 мая 2009

Если вы используете FormHelper, самый простой способ - создать ваши поля следующим образом:

echo $form->input('ModelName.0.row_id', /* snip */)
echo $form->input('ModelName.1.row_id', /* snip */)

И т. Д. Вы понимаете. Если это динамический список, всегда есть цикл for.

Когда форма POSTed, это должно дать вам серверный массив, подобный этому ($ this-> data):

array
(
    ['ModelName'] => array
    (
        [0] => array
        (
            [row_id] => value
        ),
        [1] => array
        (
            [row_id] => value
        )
    )
)

Затем вы можете использовать служебный класс Set для извлечения ваших идентификаторов (и связываться с вашими данными :))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...