将关联数组传递给smarty include,以便它的属性可用作根数据

时间:2013-10-27 16:00:37

标签: templates include smarty

使用smarty的{include}时,如何将关联数组传递给包含的模板,以便数组的命名索引可以作为自己的{$ var_name}变量访问?

E.g:

$data = [
 'moo': 'true',
 'moreMoo': [
   'a': 1,
   'b': 2,
   'c': 3
 ]
];

在基本模板中我有:

{$moo}

这将输出true。

然后我想要包含另一个模板:

{include file="myOtherTemplate.tpl"}

然后在包含的模板中,我想传递“moreMoo”,这样当包含的模板访问{$ a}时,它将输出为1.

1 个答案:

答案 0 :(得分:0)

事实证明这是不可能的。前进的方法是为不同的部分命名数据,以便您可以获取所包含模板所需的位。 e.g。

var data = {
    'templateOne': {
        'somedata': true
    },
    'templateTwo': {
        'someOtherData': false
    }
};