84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
我嘗試從模型中檢索數據,然後將其重寫為 Spatie Icalendar 的適當格式,但由於存在多個事件而不僅僅是單一事件,因此它不起作用。
我嘗試了許多不同的解決方案,但沒有找到有效的解決方案。
請問,您將如何迭代 Spatie 中的眾多事件?
Spatie 文件:https://github.com/spatie/icalendar-generator
我想迭代所有日曆事件,為 Spatie 建立一個陣列。
它應該以 ICAL 格式結束,對於普通日曆來說是可提取的。
程式碼中存在著許多不一致之處,我認為這使得事情變得更加困難。類別將事件命名為屬性、不一致的命名約定、複數模型(我知道,class 是保留關鍵字)等。
只需循環事件並將模型資料一一新增至 spatie 套件中即可。
spatie
$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());
我認為它需要一個結束時間,所以我增加了一小時。模型上的 start_time 應加入到 $dates 陣列中,以轉換為 Carbon 物件。我沒有使用 for 循環,而是使用集合方法來建立類似的邏輯,請閱讀它們 這裡。這是查詢產生器傳回的類型。
start_time
$dates
Carbon
程式碼中存在著許多不一致之處,我認為這使得事情變得更加困難。類別將事件命名為屬性、不一致的命名約定、複數模型(我知道,class 是保留關鍵字)等。
只需循環事件並將模型資料一一新增至
spatie
套件中即可。我認為它需要一個結束時間,所以我增加了一小時。模型上的
start_time
應加入到$dates
陣列中,以轉換為Carbon
物件。我沒有使用 for 循環,而是使用集合方法來建立類似的邏輯,請閱讀它們 這裡。這是查詢產生器傳回的類型。