Многостраничная Форма

хай еще разок

возникла необходимость создания многостраничной формы

вопрос: есть ли встроенный функционал?

если нет: поделитесь - как сами делаете?

http://stackoverflow.com/questions/3548528/yii-multi-page-form-wizard-best-practice

Про встроенный функционал не знаю.

Многостраничная это форма из нескольких шагов?

Решение же зависит от того, где предпочитаешь хранить данные пройденных шагов. В скрытых полях, или же в базе.

Вроде ничего сложного, по отдельному партиалу на каждую страницу, можно даже одной моделью обойтись.

Если на каждый шаг подразумеваются поля разных сущностей то:

для каждой сущности создается отдельная 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, возможно подойдет смотря конечно что требуется.

вау! мегасэнкс за подсказку!

тут вот диалог на эту же тему