有没有办法将对象分配给Smarty 3中的变量?

时间:2013-07-03 13:52:36

标签: smarty smarty3

我正在使用Smarty 2和Smarty 3升级应用程序,我想在模板中为变量名称分配一个对象。原始代码:

{section name=articles loop=$list_article}
  {assign var="article" value="`$list_article[articles]`"}

  // now use many properties of the object $article...
  <h2>{$article->title}</h2>
  {$article->text}
  ...
{/section}

但这不适用于Smarty 3,似乎{assign}只能分配字符串。它正在使用Smarty 2. Smarty 3是否有替代语法?

1 个答案:

答案 0 :(得分:1)

避免使用引号并直接转到该值。

{section name=articles loop=$list_article}
  {assign var="article" value=$list_article[articles]}

  // now use many properties of the object $article...
  <h2>{$article->title}</h2>
  {$article->text}
  ...
{/section}

但是,在这种情况下,您也可以使用foreach。

{foreach from=$list_article item=article}
  // now use many properties of the object $article...
  <h2>{$article->title}</h2>
  {$article->text}
  ...
{/section}