Golang模板从字符串数组生成值错误

我正在使用Golang项目,需要生成以下内容


app1 && app2 && app3


我的模板如下所示


{{- range ExeApp .}} {{ .Command }} {{- end}}

我的代码看起来像是带有字符串数组的命令


type App struct {

   Data    string

   Command []string

}


//This is the function

func ExeApp(m models) []App {


   switch m.Type {

   case “apps":

      return []App{

         {"# running apps",

            []string{“app1", “app2", “app3"}},

      }


目前其生成像


[app1 app2 app3]

我需要它


app1 && app2 && app3 ,


我尝试通过在.Command之前添加&&来处理模板,这无济于事,此外,我不知道如何在应用程序前后删除数组[],知道我在这里做错了什么吗?


我已经尝试过以下


{{- range .ExeApp}} {{range .Command }} && {{.}} {{end}} {{- end}}

但是现在我正在转储并出现错误: unexpected EOF或未定义函数“ Command”


在运行模板时


生成的代码是:


funcMap := template.FuncMap{

    "ExeApp": ExeApp,

}

t, err := template.New("file.txt").Funcs(funcMap).ParseFiles(container)

如果我使用第一个结构(没有字符串数组的相同结构,当然也要修改对象的代码),那么一切都会按预期进行


也尝试这个 {{-range .ExeApp}} {{range .Command}} {{.}} {{end}} {{end}}


现在我收到错误


executing "file.txt" at <.ExeApp>: can't evaluate field ExeApp in type *models

为什么 :(


四季花海
浏览 462回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go