Problemas con almacenar modelos de un dynamicform

buenas, tengo el siguiente problema con guardar el los datos que me envia la vista que posee un dynamicform

este es el controlador

public function actionCreate()

{


    $model = new Orden();


    $modelsOrdenProducto = [new Ordenproducto()];





    if ($model->load(Yii::$app->request->post()) && $model->save()) {


        $modelsOrdenProducto = Dynamic::createMultiple(Ordenproducto::className());





        Dynamic::loadMultiple($modelsOrdenProducto, Yii::$app->request->post());





        // validate all models


        $valid = $model->validate();


        $valid = Dynamic::validateMultiple($modelsOrdenProducto) && $valid;





        if ($valid) {


            $transaction = \Yii::$app->db->beginTransaction();





            try {


                if ($flag = $model->save(false)) {


                    foreach ($modelsOrdenProducto as $modelOrdenproducto) {


                        $modelOrdenproducto->id_orden = $model->idorden;





                        if (! ($flag = $modelOrdenproducto->save(false))) {


                            $transaction->rollBack();


                            break;


                        }


                    }





                }


                if ($flag) {


                    $transaction->commit();


                    return $this->redirect(['view', 'id' => $model->id]);


                }


            } catch (Exception $e) {


                $transaction->rollBack();


            }





        }





    }

y esta es la clase dynamic

use Yii;

use yii\base\Model;

use yii\helpers\ArrayHelper;

class Dynamic extends Model

{

public static function createMultiple($modelClass, $multipleModels = [])


{


    $model    = new  $modelClass;


    $formName = $model->formName();


    $post     = Yii::$app->request->post($formName);


    $models   = [];





    if (! empty($multipleModels)) {


        $keys = array_keys(ArrayHelper::map($multipleModels, 'id', 'id'));


        $multipleModels = array_combine($keys, $multipleModels);


    }





    if ($post && is_array($post)) {


        foreach ($post as $i => $item) {


            if (isset($item['id']) && !empty($item['id']) && isset($multipleModels[$item['id']])) {


                $models[] = $multipleModels[$item['id']];


            } else {


                $models[] = new $modelClass;


            }


        }


    }





    unset($model, $formName, $post);





    return $models;


}

}

lo que sucede es que a la hora de darle enviar, no me guarda y me devuelve a la seccion de crear una orden, agradeceria su ayuda muchas gracias

/* moved from General Discussions to Spanish */

seguramente falla en la validación del modelo. ¿Estás seguro que estás enviando los atributos necesarios por el modelo? No revisé tu código porque no está formateado y es molesto leer un vómito de letras así. espero me entiendas. Pero por lo que comentas, seguramente falla la validación y retorna al mismo formulario sin nada más. Y si falla la validación, asegúrate de que estés enviando todos los atributos que estén con la regla de "required" en el modelo. Saludos.