public function actionCreate()
{
$model = new Goals;
$Stages = [new Stage()];
$criterias = CriteriesGoals::find()->all();
$Substages = new Substage;
if ($model->load(Yii::$app->request->post())) {
$model->id_user = Yii::$app->user->id;
$model->status = self::ACTIVEGOAL;
$model->doc = UploadedFile::getInstance($model, 'doc');
if ($model->doc) {
if($model->upload())
{
$model->doc = $model->doc->name;
}
}
if($model->save())
{
$items = Yii::$app->request->post('Stage',[]);
for($i = 0; $i<count($items); $i++){
$Stages[$i] = new Stage();
}
if(Model::loadMultiple($Stages, Yii::$app->request->post()) && Model::validateMultiple($Stages))
{
foreach ($Stages as $key=>$Stage) {
$Stage->id_user = Yii::$app->user->id;
$Stage->goal_id = $model->id;
$Stage->save(false);
}
}
return $this->redirect(['view', 'id' => $model->id]);
}
}
return $this->render('create', [
'model' => $model,
'criterias' => $criterias,
'stages' => $Stages,
'Substages' => $Substages,
]);
}
form.find(':input[data-picker=datepicker]').removeClass('hasDatepicker');
form.find(':input[data-picker=datepicker]').not('.hasDatePicker').datepicker();
$count = count(Yii::$app->request->post('Stage', []));
$stages = [new Stage()];
for($i = 1; $i < $count; $i++) {
$stages[] = new Stage();
}
if ($model->load(Yii::$app->request->post())) {
$model->doc = UploadedFile::getInstance($model, 'doc');
if ($model->doc) {
if($model->upload())
{
$model->doc = $model->doc->baseName.'.'.$model->doc->extension;
}
}
if($model->save())
{
/* if($stages)
{
if (Model::loadMultiple($stages, Yii::$app->request->post()) && Model::validateMultiple($stages)) {
foreach ($stages as $stg) {
$stg->id_user = $model->id_user;
$stg->goal_id = $model->id;
$stg->save(false);
}
}
} */
return $this->redirect(['view', 'id' => $model->id]);
}
}
<div class="ag_1_1">
<div class="ag_3">План достижения цели</div>
<div class="stage">
<div class="ag_1_2"><?= $form->field($stage, '[]title')->textInput(['class'=>'input_goal','placeholder'=>'Название этапа'])->label(false) ?></div>
<div class="ag_1_2"><?= $form->field($stage, '[]description')->textarea(['class'=>'input_goal','placeholder'=>'Описание этапа'])->label(false) ?></div>
<ul class="ag_8">
<li class="ag_l"><img src="img/icon/leveldown.svg" alt=""/></li>
<li class="ag_ac"><?= $form->field($stage, '[]date_finish_stage')->widget(\yii\jui\DatePicker::className(),['class'=>'datepicker','options' => ['data' => ['picker' => 'datepicker']]])->label(false) ?></li>
</ul>
</div>
<div class="ag_2_1">Добавить этап</div>
</div>
Array
(
[_csrf] => ebva_QBT2BLXmnMAjO9EGjPpWbv1XJ01O-SKd9KBlExO4urObz-5P475JHDjiStbHoEK38UyrlxDybsFu8PyYQ==
[Goals] => Array
(
[goal] => купить дом
[date_finish_goal] => Mar 27, 2018
[criterion_fifnish_goal] => купленный дом
[need_goal] => жить в своем дома
[category_goal] => 6
[priority_goal] => 3
[is_public] =>0
[doc] =>
)
[Stage] => Array
(
[0] => Array
(
[title] => фффффффффффффф
)
[1] => Array
(
[description] => ввввввввввв
)
[2] => Array
(
[date_finish_stage] => Mar 26, 2018
)
[3] => Array
(
[title] =>фффффффффффффф
)
[4] => Array
(
[description] => ввввввввввв
)
[5] => Array
(
[date_finish_stage] =>Mar 26, 2018
)
)
)