хай еще разок
возникла необходимость создания многостраничной формы
вопрос: есть ли встроенный функционал?
если нет: поделитесь - как сами делаете?
хай еще разок
возникла необходимость создания многостраничной формы
вопрос: есть ли встроенный функционал?
если нет: поделитесь - как сами делаете?
Про встроенный функционал не знаю.
Многостраничная это форма из нескольких шагов?
Решение же зависит от того, где предпочитаешь хранить данные пройденных шагов. В скрытых полях, или же в базе.
Вроде ничего сложного, по отдельному партиалу на каждую страницу, можно даже одной моделью обойтись.
Если на каждый шаг подразумеваются поля разных сущностей то:
для каждой сущности создается отдельная CForm с правилами валидации и делается последовательная валидация форм при отправке.
$step = 1;
$valid = $form1->validate();
if($valid) {
// Второй шаг
$step = 2;
}
$valid = $valid && $form2->validate();
if($valid) {
// Третий шаг
$step = 3;
}
предварительно, в зависимости от шага/страницы, подгружать в форму определенный набор полей
ну типа
<form>
if()
{
Yii::import('application._include.testform.step1',true);
}
elseif()
{
Yii::import('application._include.testform.step2',true);
}
else
{
Yii::import('application._include.testform.step3',true);
}
</form>
промежуточные данные хрнаить хочу в БД
Имеется http://www.yiiframework.com/doc/api/1.1/CHtml#statefulForm-detail, возможно подойдет смотря конечно что требуется.
вау! мегасэнкс за подсказку!
тут вот диалог на эту же тему