Здравствуйте!
Прошу помочь с созданием табличного ввода.
Имеется связь многие ко многим.
Необходимо создать табличный ввод для добавления записей. В интернете примеры в основном только по редактированию записей.
Такая реализация: создается объект. и на странице создания необходимо к нему привязывать объекты.
Использую unclead\multipleinput\MultipleInput;
Вопрос: что передать во вьюшку. И как потом обрабатывать введенные данные?
Пока это у меня так
public function actionCreate()
{
$operation = new Operation(); - операция
$risk=new ReestrOperation(); - - связывающая таблица - возможные риски операции
тут нужна обработка модели ReestrOperation от табличного ввода во вьюшке
return $this->render('create', [
'operation' => $operation,
'risk' => $risk,
]);
}
вьюшка
<?= $form->field($operation, 'name')->textInput() ?>
<?= $form->field($risk,'id_reestr')->widget(MultipleInput::className(), [
'columns' =>[
[ 'name'=>'id_reestr',
'type' => \kartik\typeahead\Typeahead::className(),
'options' => [
'dataset'=>'local',
],
],
],
]);
?>
Понимаю пока бредово написано. И не прошу писать код за меня.
Просто необходимо подсказать куда рыть: нужна промежуточная модель для передачи во вьюшку для дальнейшей обработки в контроллере и создания модели ReestrOperation для каждой записи массива? Или можно обойтись без создания промежуточной модели, то как тогда?
самое интересное тот код, который написан выше, обрабатывает валидацию записи при вводе уже. но получается, что он создает одну модель и для колонки массив записей ReestrOperaion[id_reestr]=[4,3,1] (к примеру). Я это к тому, что валидацию подобную на стороне клиента хотелось бы оставить
Создание табличного ввода
-
- Сообщения: 1
- Зарегистрирован: 2014.03.26, 15:53