9

ホコリがたまって困っています。国コードに応じて 2 つの異なるダスト テンプレートを指す部分があります。

{>"receipt/merchantInfo/merchantInfo_{countryCode}"/}

が米国かどうかを判断する if else 条件を作成しようとしています{countryCode}。例:

{@if cond="'{countryCode}' == 'US'"}
<p>is country code US</p>
{:else}
<p>is NOT country code US</p>
{/if}

これは機能していません。私がこれでどこを間違えたのか、誰にも分かりますか?

4

4 に答える 4

21

ヘルパーは、@ifセキュリティ ホールの可能性があるため非推奨になりました (条件で eval を使用します)。@eq代わりにヘルパーを使用することをお勧めします。

{@eq key=countryCode value="US"}
  <p>is country code US</p>
{:else}
  <p>is NOT country code US</p>
{/eq}

それが機能しない場合は、countryCode がコンテキストで使用できることを確認してください ({@contextDump/}そのために使用できます)。

于 2013-02-22T02:00:51.953 に答える
2

以下も使用できます。

{#key}
  Some content
{:else}
  Some other content, if key doesn't have a value
{/key}

例えば:

データ

{
   firstName: "Mickey",
   lastName:  "Mouse",
   website:   null,
   phone:     "1-800-DISNEYWORLD"
}

ダストテンプレート

<p>First Name: {firstName}</p>
<p>Last Name: {lastName}</p>
{#website}
   <p>Website: {website}</p>
{:else}
   <p>Phone: {phone}</p>
{/website}

出力:

First Name: Mickey
Last Name: Mouse
Phone: 1-800-DISNEYWORLD
于 2017-01-06T14:41:08.580 に答える