В проекте cakePHP, который я создаю, я хочу вставить определенное количество идентичных записей. Они будут служить в качестве записей закладок, в которые будут добавлены дополнительные данные позже. Каждая запись будет вставлять идентификаторы, взятые из двух отношений belongs_to
, а также двух других строковых значений.Как вставить несколько строк с помощью cakePHP
Что я хочу сделать, так это указать значение для числа записей, которые я хочу создать, что будет соответствовать тому, сколько раз данные зацикливаются во время сохранения.
То, что я не знаю:
как настроить цикл для обработки заданного количества вставок
как определить поля формы в CakePHP, что только устанавливает число записи для создания.
То, что я попытался следующий:
function massAdd() {
$inserts_required = 1;
while ($inserts_required <= 10) {
$this->Match->create();
$this->Match->save($this->data);
echo $inserts_required++;
}
$brackets = $this->Match->Bracket->find('list');
$this->set(compact('brackets'));
}
Что происходит:
В верхней части экрана, над тип документа, строка
12345678910
является отображается на экранеСоздано 11 записей, и только последняя запись имеет значения, переданные в форме. Я не знаю, почему создано 11 записей, а не 10, и почему только последние записи имеют введенные данные формы?
Как всегда, ваша помощь и руководство приветствуются.
Каков результат вашего SQL-журнала? Я просто сделал то же, что и вы, и я получил 10 записей, вставленных правильно, с данными формы во всех них. Ваш журнал sql поможет нам понять это. –