Я использую wbraganca/yii2-dynamicform
Здесь create actionn работает отлично, но в обновлении action

В коде, который я отметил, я не знаю, что мне нужно делать, у меня нет такого поля (адреса) в таблице клиентов. я застрял на этом.
предположим, если я создам переменную в модели, например public $addressess, это заставит меня снова перезагрузить таблицу, и это приведет к тому, что обновить ту же форму, данные перезагружаются и форма просматривается как пустая без пустой,
если создать функцию с этим именем, я не знаю, что написать по этому поводу. .
Я просто использую такой код
Код: Выделить всё
public function getaddressess()
{
}
Код: Выделить всё
public function actionCreate()
{
$modelCustomer = new Customer;
$modelsAddress = [new Address];
if ($modelCustomer->load(Yii::$app->request->post())) {
$modelsAddress = Model::createMultiple(Address::classname());
Model::loadMultiple($modelsAddress, Yii::$app->request->post());
// ajax validation
if (Yii::$app->request->isAjax) {
Yii::$app->response->format = Response::FORMAT_JSON;
return ArrayHelper::merge(
ActiveForm::validateMultiple($modelsAddress),
ActiveForm::validate($modelCustomer)
);
}
// validate all models
$valid = $modelCustomer->validate();
$valid = Model::validateMultiple($modelsAddress) && $valid;
if ($valid) {
$transaction = \Yii::$app->db->beginTransaction();
try {
if ($flag = $modelCustomer->save(false)) {
foreach ($modelsAddress as $modelAddress) {
$modelAddress->customer_id = $modelCustomer->id;
if (! ($flag = $modelAddress->save(false))) {
$transaction->rollBack();
break;
}
}
}
if ($flag) {
$transaction->commit();
return $this->redirect(['view', 'id' => $modelCustomer->id]);
}
} catch (Exception $e) {
$transaction->rollBack();
}
}
}
return $this->render('create', [
'modelCustomer' => $modelCustomer,
'modelsAddress' => (empty($modelsAddress)) ? [new Address] : $modelsAddress
]);
}
Подробнее здесь: https://stackoverflow.com/questions/327 ... ot-working
Мобильная версия