2
Я пытаюсь выяснить, как я могу удалить новые строки в моем шаблоне, которые помещаются туда {{range}} и {{end}}. Я получаю следующий результат без каких-либо «-» теги:Golang template range newline remove
type {{makeGoTableName .TableName}} struct {
{{range $key, $value := .TableData}}
{{makeGoColName $value.ColName}} {{$value.ColType}} `db:"{{makeDBColName $value.ColName}}",json:"{{$value.ColName}}"`
{{end}}
}
Результаты в:
type Dogs struct {
ID int64 `db:"id",json:"id"`
DogNumber int64 `db:"dog_number",json:"dog_number"`
}
Если я добавляю - теги, как это так, я могу получить его близко к желательным, но он ломает отступ окончательного закрытия скобки:
type {{makeGoTableName .TableName}} struct {
{{range $key, $value := .TableData -}}
{{makeGoColName $value.ColName}} {{$value.ColType}} `db:"{{makeDBColName $value.ColName}}",json:"{{$value.ColName}}"`
{{end -}}
}
Результаты в:
type Dogs struct {
ID int64 `db:"id",json:"id"`
DogNumber int64 `db:"dog_number",json:"dog_number"`
}
Любые идеи?
Я предлагаю [форматирования вывода из шаблона] (https: // godoc .org/go/format # Source) вместо настройки шаблона для создания кода Go в каноническом формате. Форматирование выходного файла шаблона будет иметь пробелы вправо, выровнять теги полей и т. Д. И т. Д. См. [Этот ответ] (http://stackoverflow.com/questions/34126083/is-it-possible-to-use-gofmt-on -templates-that-are-designed-to-be-used-with-go-ge/34126322 # 34126322) для получения дополнительной информации. –
@ MuffinTop эй, это действительно здорово! Спасибо. – b0xxed1n