【发布时间】:2019-09-18 18:32:33
【问题描述】:
您好,我在 laravel 项目中使用 FullCalendar,我需要显示数据库中的事件。
我从数据库中获取所有事件并使用 json_encode 显示它们。
有我使用的代码:
我的控制器:
<?php
namespace App\Http\Controllers;
use App\Http\Gestionnaires\EventGestionnaire;
use Illuminate\Http\Request;
class EventController extends Controller
{
public function afficher(){
$eventGestionnaire = new EventGestionnaire;
$listeEvents = $eventGestionnaire->getListeEvents();
echo json_encode($listeEvents);
return view('pages.calendar');
}
}
还有我的脚本:
$calendar.fullCalendar({
viewRender: function(view, element) {
if (view.name != 'month'){
$(element).find('.fc-scroller').perfectScrollbar();
}
},
resourceEditable: true,
eventLimit: true,
editable: true,
selectable: true,
selectHelper: true,
header: {
left: 'month,agendaWeek,agendaDay',
center: 'title',
right: 'prev,next,today'
},
events: 'EventController.php',
错误:
jquery.min.js:3049 GET http://localhost/planner/public/EventController.php?start=2019-09-01&end=2019-10-13&_=1568831263931 404(未找到)
【问题讨论】:
-
我不具体了解 laravel,但对我来说,在 MVC 上下文中,这看起来是错误的:
echo json_encode($listeEvents); return view('pages.calendar');。同时返回 JSON 和 视图(即一些 HTML)对于 fullCalendar 没有多大意义。如果您只想返回事件 JSON,则创建一个仅执行此操作的控制器函数,并留下一个单独的函数来显示包含日历本身的视图 -
另外我很确定在 laravel 中你不会像“eventController.php”那样调用控制器——这又是没有意义的,它怎么知道你想在控制器?我认为您可能需要学习 laravel 教程和/或阅读官方文档,并确保您了解 conteollers 以及操作和路由的基础知识,以便设置正确的 URL。就像我说的那样,我不太了解该框架,但我知道的足够多,可以看出您使用它的方式不是正确的
标签: javascript php laravel fullcalendar