对 fullcalendar.io 使用普通的 PHP 路由 (&) 和 symfony 路由 (/)

Posted

技术标签:

【中文标题】对 fullcalendar.io 使用普通的 PHP 路由 (&) 和 symfony 路由 (/)【英文标题】:Use normal PHP-routes (&) with symfony routing (/) for fullcalendar.io 【发布时间】:2015-02-12 20:57:07 【问题描述】:

我想在我的 Symfony2 项目中使用 fullcalendar.io。 Fullcalendar 发送此类获取事件数据的请求:

/myfeed.php?start=2013-12-01&end=2014-01-12&_=1386054751381

Symfony2 通常在 URl 中使用 Slashes 路由,它只存在这条路由:

/myfeed/start=2013-12-01/end=2014-01-12/_=1386054751381

如何使用 Symfony2 的 Fullcalendar 功能?

这是我的测试控制器:

<?php

namespace Chris\KfzBuchungBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;

class AjaxGetWeekController extends Controller

    public function indexAction(Request $request, $start)
    

        $response = new Response(json_encode(array("title" => 'blub',"start" =>$start)));
        $response->headers->set('Content-Type', 'application/json');

        return $response;
    

谢谢!

【问题讨论】:

您可以使用 JsonResponse 而不是 Response 作为您的响应:$response = new JsonResponse(array("title" => 'blub',"start" =>$start)); 【参考方案1】:

即使 Symfony 路由通常设置不同,您仍然可以非常轻松地检索查询字符串参数。请参阅以下内容:

http://symfony.com/doc/current/quick_tour/the_controller.html#getting-information-from-the-request

所以在你的控制器中你所要做的就是:

$start      = $request->query->get('start');
$end        = $request->query->get('start');
$timestamp  = $request->query->get('_');

我鼓励您阅读 Symfony 文档,因为它包含许多示例,非常详尽。这个问题也已经在 *** 上得到了解答,这里有更多示例:How to get the request parameters in symfony2

【讨论】:

以上是关于对 fullcalendar.io 使用普通的 PHP 路由 (&) 和 symfony 路由 (/)的主要内容,如果未能解决你的问题,请参考以下文章

fullcalendar.io可以在.net core Blazor中使用吗?

json Fullcalendar.io

js非常强大的日历控件fullcalendar.js, 日期时间库: moment.js

加载 fullcalendar.io 事件时出错 - 未显示数据

Fullcalendar.io在将事件属性解析为函数时出现问题

FullCalendar和jquery-confirm应用