繁体   English   中英

拦截控制器-Symfony2

[英]Intercepting a Controller - Symfony2

我想拦截所有Controller动作并执行以下两项操作之一(取决于选项-在此示例中,说URL中的查询字符串值):

(1)返回仅包含变量的数组,而不呈现模板

(2)精确渲染模板,但忽略该模板内的任何“扩展”操作

原因是使用相同的服务器端代码,选项1允许我只返回说一个Ajax请求的变量,选项2允许我只返回HTML的内容部分(对于Ajax),而不是完整的内容。带有导航等的HTML

我曾尝试扩展控制器,但一直使人讨厌的“与Symfony \\ Bundle \\ FrameworkBundle \\ Controller \\ Controller”不匹配。

我尝试过使用事件监听器,这似乎使我更加接近,但是我认为监听控制器事件实际上并不会运行控制器。

我确定这应该很容易?

为此,您可以使用FOSRestBundle或仅使用其部分。

从README.md:

一个View层,以启用和格式化不可知论的控制器

https://github.com/FriendsOfSymfony/FOSRestBundle

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM