【发布时间】:2023-03-18 18:39:01
【问题描述】:
我想根据给定的权重随机选择生成文档的一部分,类似于以下伪代码:
{{prob 50}}
This will appear with probability 50%.
{{prob 30}}
This will appear with probability 30%.
{{prob 20}}
You got the idea.
{{endprob}}
到目前为止,我想到的最好的事情是:
{{choose . "template1" 50 "template2" 30 "template3" 20}}
其中choose 是我属于FuncMap 的函数。当前模板被传递给自身,例如.T 和 templateN 是关联的模板。该函数将选择模板,在.T 中查找并使用. 进行渲染。另一个类似的选择是将templateN 作为. 的一部分直接传递。
我想知道是否有更优雅/不那么骇人听闻的方式?我想,不可能在text/template 中创建自定义操作,是吗?
【问题讨论】: