Мне интересно, какой самый чистый способ реализовать форму cakephp, где 1 элемент управления - это множественный выбор, а остальные - текстовые поля или одиночный выбор, а затем данные вставляются в виде нескольких строк с помощью saveall (). Так, например, форма выбрана со следующими значениями:
текстовое поле Значение = Foo
множественный выбор значений B = США, Мексика, Канада
single = выберите значение C = 10
и поэтому я хочу вставить эти строки в базу данных с помощью saveall (): Foo, US, 10 Foo, Mexico, 10 Foo, Canada, 10
Теперь я знаю, что в представлении добавления я могу использовать этот формат для оператора ввода:
input ('Модель.0.field1', ...)
но мне интересно, могу ли я смешать это в той же форме с входными данными, отформатированными как input ('Model.field2', ....).
Обновление: когда я смешиваю и сопоставляю элементы управления с одним и несколькими вариантами выбора, данные формы отправляются следующим образом:
Array
(
[Alert] => Array
(
[schedule_id] => 75
[user_id] => 6
[0] => Array
(
[frequency] => Array
(
[0] => WEEKLY
[1] => MONTHLY
)
)
[limit_value] => .03
[limit_adjustment] => 0
[type] => LIMIT
[disabled] => 0
)
)
Я попытался передать эти данные в saveall (), но он обрабатывает их как одну запись.
Update2: я думаю, что saveAll () требует, чтобы несколько строк данных были отформатированы следующим образом:
Array
(
[Article] => Array(
[0] => Array
(
[title] => title 1
)
[1] => Array
(
[title] => title 2
)
)
)
Похоже, что после отправки мне понадобится код javascript, который реструктурирует массив.