Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
Watched Topics
FAQ
Поиск
Пользователи
Группы
Регистрация
Профиль
Войти и проверить личные сообщения
Вход
Список форумов Cake-PHP.ru
->
Общий
Ответить
Имя
Тема
Сообщение
Смайлики
Дополнительные смайлики
Цвет шрифта:
По умолчанию
Тёмно-красный
Красный
Оранжевый
Коричневый
Жёлтый
Зелёный
Оливковый
Голубой
Синий
Тёмно-синий
Индиго
Фиолетовый
Белый
Чёрный
Размер шрифта:
Размер шрифта
Очень маленький
Маленький
Обычный
Большой
Огромный
Закрыть теги
[quote="mayar"]Проверьте, правильно ли вы именуете файлы, таблицы и т.п. Вот ваша ассоцация: Анкеты HABTM Вопросы Связующия таблица должна называться Анкеты_Вопросы, т.к. "А<В" Воспользуйтесь консольной утилиткой [code]cake bake[/code] для создания моделей, контроллеров и вьюшек для обеих таблиц. Модель, контроллер и вью для связующей таблицы вроде не нужна. С чекбоксами дела опстоят довольно сложно в Cake (насколько я успел убедиться). Формируются они вот так: [code]<?php echo $form->input('trouble', array( 'type' => 'checkbox', 'label' => 'Отправить претензию')); ?>[/code] Какие поля у вас есть в таблицах Анкеты и Вопросы? Насколько я поня, вы хотите заносить данные сразу в обе таблицы: добавить анкету и сразу же набор вопросов к ней, верно?[/quote]
Настройки
HTML
ВЫКЛЮЧЕН
BBCode
ВКЛЮЧЕН
Смайлики
ВКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Отключить в этом сообщении смайлики
Если у вас плохое зрение или вы не можете прочесть этот код по какой-то другой причине, то обратитесь за помощью к
Администратору
.
Код подтверждения: *
Введите код в точности так, как вы его видите. Код является регистро-зависимым, а символ нуля имеет косую линию внутри цифры.
Часовой пояс: GMT + 3
Перейти:
Выберите форум
CakePHP Форум
----------------
Общий
Установка и настройка
Творчество
Вопросы и пожелания
Комментарии к главам руководства по CakePHP 1.1
Обзор темы
Автор
Сообщение
mayar
Добавлено: 15 Сен 2009 10:17:26
Заголовок сообщения:
Когда я формировал группу чекбоксов - я решил обойтись без хелпера $form.
Группа формируется в цикле из вот таких частей:
Код:
<input type="checkbox" name="data[EquipSet][<?php echo $i;?>][equip_id]" value="<?php echo $value; ?>" />
Самое главное для saveAll - сформировать правильный массив.
Почитай вот тут: http://teknoid.wordpress.com/2008/05/05/multiple-checkboxes/
тут: http://blog.matsimitsu.nl/code/164/saveall-with-cakephp
и тут поищи: http://www.google.ru/#hl=ru&source=hp&q=cakephp+saveAll+checkboxes&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f&oq=cakephp+saveAll+checkboxes&fp=ecfa0881d83bc48d
JN0iZzze
Добавлено: 11 Сен 2009 17:38:16
Заголовок сообщения:
Цитата:
Насколько я поня, вы хотите заносить данные сразу в обе таблицы: добавить анкету и сразу же набор вопросов к ней, верно?
Да верно но я так понимаю что без обработки на сервере это не получиться, так как чекбоксы вставляю как
Код:
$form->checkbox('Questionnaire.'.$one['Question']['id'].'.question_id')
И на сервер передаёться масив данных Questionnaire содержащий поля name и далее по числовым индесам [Questionnaire][0][question_id] = 1, [Questionnaire][1][question_id] = 0
Такой вариант не прокатывает помоему по двум причинам так как я неправельно именую группу чекбоксов и во вторых в чекбоксах передаёться состояние флажка. на сервере необходимо удалить все нулевые флажки а установленные заменить в массиве на ключ массива (так как он являеться id вопроса). Насчтё этого проблем нет, проблема в том как эти данные потом сохранить? $this->Questionnaire->saveAll($this->data) Не даёт результатов как ни пробовал пробовал, проблема как мне видиться либо в самом обращение к объекту $this->Questionnaire либо в именнование ключа в массиве $this->data
mayar
Добавлено: 11 Сен 2009 15:42:07
Заголовок сообщения:
Проверьте, правильно ли вы именуете файлы, таблицы и т.п.
Вот ваша ассоцация:
Анкеты HABTM Вопросы
Связующия таблица должна называться Анкеты_Вопросы, т.к. "А<В"
Воспользуйтесь консольной утилиткой
Код:
cake bake
для создания моделей, контроллеров и вьюшек для обеих таблиц. Модель, контроллер и вью для связующей таблицы вроде не нужна.
С чекбоксами дела опстоят довольно сложно в Cake (насколько я успел убедиться). Формируются они вот так:
Код:
<?php echo $form->input('trouble', array( 'type' => 'checkbox', 'label' => 'Отправить претензию')); ?>
Какие поля у вас есть в таблицах Анкеты и Вопросы?
Насколько я поня, вы хотите заносить данные сразу в обе таблицы: добавить анкету и сразу же набор вопросов к ней, верно?
JN0iZzze
Добавлено: 11 Сен 2009 13:50:49
Заголовок сообщения: Сохранение данных в таблицы HABTM
Добрый день, мне нужен совет и помощь. У меня есть задача есть модели:
Question - Вопросы
Questionnaire - Анкета
(чтоб не путаться буду называть их по русски) Необходимо чтобы при добавление Анкеты можно было выбрать Вопросы которые туда войдут (с помощью checkbox'ов). Одни и теже вопросы могут находиться в разных Анкетах. Для этого создал дополнительную таблицу questionnaires_questions и связал её через HABTM с Вопросами и Ответами. Далее сталкнулся с трудностями и непониманием.
1) Как вообще записать в дополнительную таблицу данные из checkbox?
2) Какими должны быть имена checkbox'ов чтобы на сервере можно было обрабатывать переданные данные?
3) Нужнали для дополнительной таблицы модель? Или только HABTM связи в моделях Вопросы и Анкеты
4) При попытке на сервере выполнить $this->Questionnaire->save($this->data) результатов никаких, как мне именовать данные из checkbox чтобы они успешно сохранились?
5) Возможно ли сохранить сразу несколько записей о связи одной командой save или только foreach?
Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB
Если ничего интересного не нашли, можно рекламу почитать, а рекламируется у нас сегодня «».