Решаю задачу связанную с слипинговл, не могу понять как ее решить на данный момент...
При выборе значений в селекте они формируют массив
Мне же нужно сделать выбор нескольких вариантов и дублировать запрос инсерт с значениями второго порядка, третьего и т.д.
Технически могу сделать циклами, но куда падают данные значения, где их принять...
Может кто-то шарит за сову и сможет подсказать выход?
табс:
// Связь с фильтрами
$filters = Filter::query()->oldest('order')->get();
$filterValues = FilterValue::all()->groupBy('filter_id');
$filtersElements = [
'<h4 class="subform_header">Фильтры</h4>',
];
foreach ($filters as $filter) {
/** @var Collection $currentFilterValues */
$currentFilterValues = $filterValues->get($filter->id);
$options = $currentFilterValues->map(static function (FilterValue $item) {
return [
'id' => $item->id,
'value' => $item->name,
];
})->pluck('value', 'id')->toArray();
$filtersElements[] = AdminFormElement::multiselect('params->' . $filter->id, $filter->name)
->setOptions($options);
}
$filtersForms = AdminForm::elements([
'<p>После изменения функционала надо обязательно сохранить изменения в базу (кнопка Сохранить внизу формы).</p>',
AdminFormElement::hasMany('filters', $filtersElements),
]);
$tabs->appendTab($filtersForms, 'Варианты фильтров', false);
}