资讯专栏INFORMATION COLUMN

Symfony笔记之--控制器的快捷方法

loonggg / 2542人阅读

摘要:获取服务重定向生成路由的返回一个添加一个判断是否授权进入某个方法判断用户是否授权,否,抛出异常手动判断是否合法把请求转发到其他控制器和方法第二个参数为上占位符参数,第三个为其他额外的参数文件下载简单用法示例如果是之类,

Shortcuts methods in Controller 1. 获取服务
    $this->get($serviceId);
2. 重定向
    
    $this->redirectToRoute($routeName, $parameters, $status = 302);
3. 生成路由的url
    $this->generateUrl($routeName, $parameters, $referenceType);
4. 返回一个json response
    
    $this->json($data, $status = 200, $headers = array(), $context = array());
5. 添加一个flash message
    $this->addFlash($type, $message);
6. 判断是否授权进入某个方法
    $this->isGranted("ROLE_ADMIN");
7. 判断用户是否授权,否,抛出异常
    $this->denyAccessUnlessGranted("ROLE_EDIT", $item, "You cannot edit this item.");
8. 手动判断 CSRF token是否合法
    $this->isCsrfTokenValid("token_id", $token);
9. 把请求转发到其他控制器和方法
    $this->forward("GregwarCaptchaBundle:Captcha:generateCaptcha", ["key" => $key]);
    //forward($controller, array $path = array(), array $query = array())

PS: 第二个参数为route上占位符参数,第三个为其他额外的参数
10. 文件下载(symfony >= 3.2)
    $this->file();

    //简单用法示例
     return $this->file($docPath, $saveName); 
     // 如果是pdf之类,直接显示而不是下载,需要设置第三个参数ResponseHeaderBag::DISPOSITION_INLINE
    // 还可以直接接受一个File或者UploadedFile实例
    //$samplePdf = new File("/sample.pdf");
    //return $this->file($samplePdf);
11. 读取配置参数
    $this->getParameter("kernel.root_dir");

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/28124.html

相关文章

  • symfony笔记--基础常用知识点

    摘要:获取登录用户信息控制器中等价于中游客用户密码加密校验密码密码加密文件上传相关获取上传的文件不为空未上传获取根目录和获取当前路由名称 Symfony Basic 获取登录用户信息 控制器中 $this->getUser(); //等价于 $this->get(security.token_storage) ->getToken() ->g...

    Jensen 评论0 收藏0
  • Symfony笔记--自定义异常提示

    Custom Exception ExceptionController namespace KitBaseBundleController; use SymfonyBundleTwigBundleControllerExceptionController as BaseController; use SymfonyComponentHttpFoundationR...

    libxd 评论0 收藏0
  • 你不可不知道20个优秀PHP框架

    摘要:每一个开发者都知道,拥有一个强大的框架可以让开发工作变得更加快捷安全和有效。官方网站是一款老牌的框架,现在稳定版本已经是了。官方网站是由最大的社区之一的管理开发的,也是一个开源的框架。 对于Web开发者来说,PHP是一款非常强大而又受欢迎的编程语言。世界上很多顶级的网站都是基于PHP开发的。 每一个开发者都知道,拥有一个强大的框架可以让开发工作变得更加快捷、安全和有效。在开发项目之前选...

    zombieda 评论0 收藏0
  • Symfony2中创建数据模型

    摘要:今天我在这里给大家分享一下在中如何创建数据模型和基于的搭建。对象与数据库的关系通常在电脑的世界里创建的数据模型会转换为数据库里的一条条记录。 Symfony是一款优秀的基于MVC架构的PHP框架。今天我在这里给大家分享一下在Symfony中如何创建数据模型和基于RESTful api的搭建。重点是如何创建数据模型哦! 本教程使用的当前Symfony的LTS版本(Symfony 2.8...

    rainyang 评论0 收藏0
  • 超好用谷歌浏览器、Sublime Text、Phpstorm、油猴插件合集

    摘要:分享一些超好用插件,打造一个不一样的浏览器编辑器。一谷歌浏览器插件谷歌访问助手强烈推荐一键安装,无需其他配置,即可访问谷歌。谷歌浏览器是很耗内存的,该插件会自动挂起长时间未使用的网页,来释放系统资源。 showImg(https://segmentfault.com/img/remote/1460000014011338); 分享一些超好用插件,打造一个不一样的 GitHub、浏览器、...

    Rango 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<