在golang模板中调用链接

时间:2014-08-05 12:13:31

标签: templates go

假设您有以下代码

router.Get("foo").URL("id", id)

如果我想在go模板中做类似的事情。我相信我必须走很长的路并创建一个中间变量。

{{ $urlGenerator := .Router.Get "foo" }}
{{ $urlGenerator.URL "id" .Id }}

最好看起来像这样

{{ (.Router.Get "foo") .Url }}

或者只是

{{ .Router.Get("foo").Url }}

有没有人找到一种有点像这样的方法?我在文档中找不到任何关于此的内容,除了管道之外,它们起着......管道的作用。

1 个答案:

答案 0 :(得分:4)

它位于text/template包doc的Arguments段的最后:

  
      
  • 上述一个带括号的实例,用于分组。可以通过字段或映射键调用来访问结果:   
        
    • print (.F1 arg1) (.F2 arg2)
    •   
    • (.StructValuedMethod "arg").Field
    •   
  •