簡體   English   中英

表達式中的 Freemarker 表達式

[英]Freemarker Expression in Expression

在我的模板中,我想基於我正在處理的 XML 實現一些動態邏輯我想從我的模板中的字典中獲取貨幣匯率。

--我的XML

<Message>
...
<Currency1>EUR<Currency1>
<Currency2>USD<Currency2>
...
<Message>

-- 我的模板

<#assign EUR = {"AED":503178,"USD":0.923}>
{${doc.Message...Currency1}.${doc.Message...Currency2}} <-- but something like this is not possible-->
-->

我期望的是它進入字典並根據我的 XML 中的貨幣給我 0.923。 有沒有其他有效的方法?

您可以使用namespace特殊變量如下:

<#assign Currency1="EUR">
<#assign Currency2="USD">
<#assign EUR = {"AED":503178,"USD":0.923}>
${.namespace[Currency1][Currency2]}

但我建議更改您的模型以獲得更好的清晰度。 例如:

<#assign Currency1="EUR">
<#assign Currency2="USD">
<#assign rates= {
        "EUR" : {"AED":4.3,"USD":0.923},
        "USD" : {"AED":3.67,"USD":1.17}
}>
${rates[Currency1][Currency2]}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM