Rumah > Soal Jawab > teks badan
Saya cuba mendapatkan semula data daripada model dan kemudian menulisnya semula ke dalam format yang sesuai untuk Spatie Icalendar tetapi ia tidak berfungsi kerana terdapat berbilang acara dan bukan hanya satu acara.
Saya mencuba pelbagai penyelesaian yang berbeza tetapi tidak menjumpai penyelesaian yang berkesan.
Bagaimana anda akan mengulangi banyak acara di Spatie?
Dokumentasi Spatie: https://github.com/spatie/icalendar-generator
Saya ingin mengulangi semua acara kalendar, membuat tatasusunan untuk Spatie.
Ia sepatutnya berakhir dalam format ICAL, boleh diekstrak untuk kalendar biasa.
P粉3176793422024-01-17 11:45:21
Terdapat banyak ketidakkonsistenan dalam kod, yang saya fikir menjadikan perkara lebih sukar. Kelas menamakan peristiwa sebagai sifat, konvensyen penamaan yang tidak konsisten, model pemajmukan (saya tahu, kelas ialah kata kunci simpanan), dsb.
Hanya putar peristiwa dan tambahkan data model pada pakej spatie
satu demi satu.
$calendar = Calendar::create($iCalendar->name); $events->each(function (Classes $event) { $calendar->event(Event::create($event->class_type === 1 ? 'Teoritime' : 'Køretime') ->startsAt($event->start_time) ->endsAt($event->start_time->addHour()) ) }); dd($calendar->get());
Saya fikir ia memerlukan masa tamat jadi saya menambah satu jam. start_time
应添加到 $dates
数组中,以转换为 Carbon
objek pada model. Daripada menggunakan gelung for, saya menggunakan kaedah pengumpulan untuk mencipta logik yang serupa, bacanya di sini. Ini ialah jenis yang dikembalikan oleh pembina pertanyaan.