Issue
I am trying to display a list of comma separated values, and don’t want to display a comma after the last item (or the only item if there is only one).
My code so far:
Equipment:
{{$equipment := .Equipment}}
{{ range $index, $element := .Equipment}}
{{$element.Name}}
{{if lt $index ((len $equipment) -1)}}
,
{{end}}
{{end}}
The current output: Equipment: Mat , Dumbbell ,
How do I get rid of the trailing comma
Solution
A nice trick you can use is:
Equipment:
{{$equipment := .Equipment}}
{{ range $index, $element := .Equipment}}
{{if $index}},{{end}}
{{$element.Name}}
{{end}}
This works because the first index is 0
, which returns false
in the if
statement. So this code returns false
for the first index, and then places a comma in front of each following iteration. This results in a comma separated list without a leading or trailing comma.
Answered By – RobF
Answer Checked By – Mary Flores (GoLangFix Volunteer)