Проблема с обновлением записей

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Alexalex
Сообщения: 32
Зарегистрирован: 2018.08.31, 13:53

Проблема с обновлением записей

Сообщение Alexalex »

Добрый день, есть таблица Parse и три формы для обновления этой таблицы.
Контроллер

Код: Выделить всё

public function actionTable($id)
    {
        $this->layout = 'custom';

        $model = Deal::findOne($id);
        $td1 = Parse::findOne(['deal_id' => $model->id, 'table_id' => 1]);
        $td2 = Parse::findOne(['deal_id' => $model->id, 'table_id' => 2]);
        $td3 = Parse::findOne(['deal_id' => $model->id, 'table_id' => 3]);
        if ($td1->load(Yii::$app->request->post()) && $td1->save()) {
            Yii::$app->session->setFlash('success', "Человек добавлен");
            return $this->refresh();
        }
        if ($td2->load(Yii::$app->request->post()) && $td2->save()) {
            Yii::$app->session->setFlash('success', "Человек добавлен");
            return $this->refresh();
        }
        if ($td3->load(Yii::$app->request->post()) && $td3->save()) {
            Yii::$app->session->setFlash('success', "Человек добавлен");
            return $this->refresh();
        }
        return $this->render('table', [
            'model' => $model,'td1' => $td1,'td2' => $td2,'td3' => $td3
        ]);

    }
Вид

Код: Выделить всё

<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($td1, 'td1') ?>
<?php echo Html::submitButton('Сохранить', [
    'class' => 'l-btn'
]); ?>
<?php ActiveForm::end(); ?>

<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($td2, 'td1') ?>
<?php echo Html::submitButton('Сохранить', [
    'class' => 'l-btn'
]); ?>
<?php ActiveForm::end(); ?>

<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($td3, 'td1') ?>
<?php echo Html::submitButton('Сохранить', [
    'class' => 'l-btn'
]); ?>
<?php ActiveForm::end(); ?>
При попытке отправки любой формы запись идёт только в $td1
Не подскажите что делаю не так?
Аватара пользователя
SiZE
Сообщения: 2817
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Проблема с обновлением записей

Сообщение SiZE »

Что то не так :)
Последний раз редактировалось SiZE 2018.11.25, 14:33, всего редактировалось 1 раз.
Аватара пользователя
proctoleha
Сообщения: 298
Зарегистрирован: 2016.07.10, 19:00

Re: Проблема с обновлением записей

Сообщение proctoleha »

Код: Выделить всё

<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($td1, 'td1') ?>
<?php echo Html::submitButton('Сохранить', [
    'class' => 'l-btn'
]); ?>
<?php ActiveForm::end(); ?>

<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($td2, 'td2') ?>
<?php echo Html::submitButton('Сохранить', [
    'class' => 'l-btn'
]); ?>
<?php ActiveForm::end(); ?>

<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($td3, 'td3') ?>
<?php echo Html::submitButton('Сохранить', [
    'class' => 'l-btn'
]); ?>
<?php ActiveForm::end(); ?>
найдите два отличия :)
Вот за что я не люблю линукс, так это за свои кривые, временами, руки
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: Проблема с обновлением записей

Сообщение urichalex »

FormName формируется один и тот же, по-этому и ловит первая модель
Ответить