Библиотека excel Laravel(веб-сайт Maatwebsite) : Как создать раскрывающийся список с несколькими вариантами выбора для экспорта

#laravel-5 #maatwebsite-excel #laravel-excel

Вопрос:

Я использую Laravel Excel для экспорта excel с помощью larvel. Мне нужен выпадающий список с несколькими вариантами выбора.

 use AppMyModel;
use MaatwebsiteExcelConcernsFromArray;
use MaatwebsiteExcelConcernsWithHeadings;

class MyModelExport implements FromArray, WithHeadings
{
    public $rowCount = 0;
    public function array(): array
    {
        $branches = MyModel::get([
            "title",
            "ranks",
        ]);

        $data = [];
        

        foreach ($items $key => $item) {

            $data[$key]['title'] = $item->title;
            $data[$key]['ranks'] = $item->ranks;
        }

        $this->rowCount = count($data);
        return $data;
    }

    public function registerEvents(): array {
        
        return [
            AfterSheet::class => function(AfterSheet $event) {
                /** @var Sheet $sheet */
                $sheet = $event->sheet;

                /**
                 * validation for bulkuploadsheet
                 */
                
                for($i=2; $i<=$this->rowCount 1; $i  ){
                    $sheet->setCellValue('B'.$i, $sheet->getCell('B'.$i)->getValue());
                    $configs = "dis1, dis 2, dis 3";
                    $objValidation = $sheet->getCell('B'.$i)->getDataValidation();
                    $objValidation->setType(DataValidation::TYPE_LIST);
                    $objValidation->setErrorStyle(DataValidation::STYLE_INFORMATION);
                    $objValidation->setAllowBlank(false);
                    $objValidation->setShowInputMessage(true);
                    $objValidation->setShowErrorMessage(true);
                    $objValidation->setShowDropDown(true);
                    $objValidation->setErrorTitle('Input error');
                    $objValidation->setError('Value is not in list.');
                    $objValidation->setPromptTitle('Pick from list');
                    $objValidation->setPrompt('Please pick a rank from the drop-down list.');
                    $objValidation->setFormula1('"' . $configs . '"');
                }
            },
        ];
    }

    public function headings(): array
    {
        return [
            'Title',
            'Ranks'
        ];
    }
}
 

Этот код дает выпадающее меню. Но что мне нужно, так это выпадающий список с несколькими вариантами выбора. Просто мне нужно выбрать несколько рангов в одной ячейке.