关于symfony传递值和twig里面的asset的问题
Jun 06, 2016 pm 08:09 PM
用的是symfony框架,我从后台传递两个值到twig中,然后再想赋值到asset()里面,我该怎么做?控制器传递值的代码如下:
<code>return $this->render("AcmeMinsuBundle:Default:advsImage.html.twig", array('pagination' => $pagination,'cfgImagePath' => $cfgImagePath) );</code>
twig代码如下:
<code>{% for paginations in pagination %} <ul> <li> <div><img src="%7B%7B%20asset('%7B%7B%20cfgImagePath%20%7D%7D%7B%7B%20paginations.getAdvsImagePath%20%7D%7D')%20%7D%7D" alt="关于symfony传递值和twig里面的asset的问题" ></div> </li> </ul> {% endfor %}</code>
我知道以上方法是不行的,那cfgImagePath和paginations.getAdvsImagePath这两个变量组合起来是一个图片的路径,我改怎么传递值或者写twig里面的代码才实现呢。刚开始用symfony,很多都不是很懂,忘各位不吝赐教。
回复内容:
用的是symfony框架,我从后台传递两个值到twig中,然后再想赋值到asset()里面,我该怎么做?控制器传递值的代码如下:
<code>return $this->render("AcmeMinsuBundle:Default:advsImage.html.twig", array('pagination' => $pagination,'cfgImagePath' => $cfgImagePath) );</code>
twig代码如下:
<code>{% for paginations in pagination %} <ul> <li> <div><img src="%7B%7B%20asset('%7B%7B%20cfgImagePath%20%7D%7D%7B%7B%20paginations.getAdvsImagePath%20%7D%7D')%20%7D%7D" alt="关于symfony传递值和twig里面的asset的问题" ></div> </li> </ul> {% endfor %}</code>
我知道以上方法是不行的,那cfgImagePath和paginations.getAdvsImagePath这两个变量组合起来是一个图片的路径,我改怎么传递值或者写twig里面的代码才实现呢。刚开始用symfony,很多都不是很懂,忘各位不吝赐教。
短答案:你需要用"~
"操作符(详见Twig文档)
长答案:
你需要把图片标签改成下边这样:
<code><img src="%7B%7B%20asset(cfgImagePath%20~%20paginations.getAdvsImagePath)%20%7D%7D" alt="关于symfony传递值和twig里面的asset的问题" ></code>
解释:
"
{{ }}
"不能进行嵌套把两个或多个变量、字符串连接起来,用"
~
"操作符,相当于PHP的".
"操作符asset
是twig
的一个函数,传入的变量是给函数用的,而不是输出给HTML的,此处不应有引号

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian
