Есть модель Contact со связью один-ко-многим к модели Numbers, вью update модели Contact должно предоставлять возможность создавать и сохранять новую модель Numbers, привязанную связью к редактируемой модели. Пытаюсь сделать через pjax, но что-то не получается, не сохраняет модели Numbers, не хватает знаний:
views\contact\_form.php:
Код: Выделить всё
...
<div class="contact-form">
<?php $form = ActiveForm::begin(['id' => 'contact-form']); ?>
<?= $form->field($model, 'first_name')->textInput(['maxlength' => true]) ?>
<?= $form->field($model, 'last_name')->textInput(['maxlength' => true]) ?>
<?php Pjax::begin([
'id' => 'add',
'enablePushState' => false,
'linkSelector' => 'a',
//'formSelector' => 'numbers-form',
]); ?>
// Сюда добавляется форма ввода нового номера из '../numbers/add'
<?php Pjax::end(); ?>
<?= Html::a('Добавить номер', ['../numbers/add', 'contactId' => $model->id], ['class' => 'btn btn-primary']) ?>
<div class="form-group">
<?= Html::submitButton($model->isNewRecord ? 'Создать' : 'Изменить', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div>
<?php ActiveForm::end(); ?>
<?php
$this->registerJs(
"$(document).on('submit', 'form', function(event) {
$.pjax.submit(event, '#numbers-form');
})"
);
?>
</div>
....
Код: Выделить всё
...
<div class="numbers-form">
<?php
$form = ActiveForm::begin(['id' => 'numbers-form']);
$types = ArrayHelper::map(Types::find()->all(), 'id', 'name');
?>
<?= $form->field($model, 'type_id')->dropDownList($types)->label('Тип'); ?>
<?= $form->field($model, 'number')->widget(MaskedInput::className(),['mask' => '+7 (999) 999-9999']) ?>
<?php ActiveForm::end(); ?>
</div>
...