服务方法作为树枝全局变量 [英] service method as twig global variable

查看:29
本文介绍了服务方法作为树枝全局变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的 symfony2 应用程序中,我有一个 getPorfolioUser 方法,它返回一个特定的用户变量.

In my symfony2 application, I have a getPorfolioUser method which return a specific user variable.

我期待能够打电话

{% 如果投资组合用户 %}

{% if portfolio_user %}

在树枝上.我不明白如何将其设置为全局变量,因为从文档中我的印象是我只能设置固定元素或服务,而不能设置服务的方法.

in twig. I did not understand how I could set this as a global variable as from the documentation I am under the impression I can only set fixed elements or services but not services' methods.

我是否有义务为此编写扩展程序或帮助程序?这样做的更简单方法是什么?

Am I obliged to write an extension or a helper for that ? What the simpler way of doing this ?

谢谢!

推荐答案

您可以将自定义服务定义为 twig globals 变量 如下:

You can define your custom service as twig globals variable as follow:

# Twig Configuration
twig:
    debug:            "%kernel.debug%"
    strict_variables: "%kernel.debug%"
    globals:
        myGlobaService: "@acme.demo_portfolio_service"  #The id of your service

使用 Twig 文件

{% if myGlobaService.portfolio_user() %}

希望对您有所帮助

这篇关于服务方法作为树枝全局变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆