Отображение результатов запроса к базе данных в виде текста события (Laravel 7, FullCalendar 5)

Я получаю несколько столбцов из своей базы данных в виде ленты событий от моего контроллера:

$events = DB::table('toolplanview')
  ->select('id', 'eventId', 'resourceId', 'title', 'start', 'end')
  ->get();
return json_encode($events);

По умолчанию Календарь отображает title о событиях, но мне также нужно показать eventId. Я могу получить некоторую информацию, используя

eventContent: function(info) {
  return info.event.title + " (Start: " + info.event.start +")";
},

в моем определении календаря, на мой взгляд, но я не могу понять, как получить доступ ко всем другим столбцам из ленты событий / результатов запроса. Я просмотрел документы и не нашел ни одного массива, где они могли бы быть.

1 ответ

Решение

Если у вас есть нестандартные поля в ваших объектах событий, то, согласно документации по синтаксическому анализу событий, fullCalendar поместит их внутриextendedProps объект, который становится частью объекта события в fullCalendar.

Итак, чтобы получить поле с именем eventId из ваших исходных данных, вы сможете использовать info.event.extendedProps.eventIdчтобы получить к нему доступ. например

eventContent: function(info) {
  return info.event.extendedProps.eventId + ": " + info.event.title + " (Start: " + info.event.start +")";
},
Другие вопросы по тегам