[go] go 언어의 text/template/exec 패키지를 사용하여 템플릿에 조건문 삽입하는 방법
Go 언어의 text/template
및 text/template/exec
패키지는 템플릿 기반의 텍스트 출력을 생성하는 데 사용됩니다. 이 패키지를 활용하여 템플릿에 조건문을 삽입하는 방법에 대해 알아보겠습니다.
템플릿 생성 및 조건문 삽입
우선, 템플릿을 생성하고 해당 템플릿에 조건문을 삽입하는 방법을 살펴봅시다.
package main
import (
"os"
"text/template"
)
func main() {
// 템플릿 문자열 정의
const tmpl = `{{if .Enabled}}Welcome!{{else}}Access Denied{{end}}`
// 템플릿 생성
t := template.Must(template.New("template").Parse(tmpl))
// 템플릿에 전달할 데이터 정의
data := struct {
Enabled bool
}{
Enabled: true, // 조건을 만족하는 경우
}
// 템플릿 실행 및 출력
t.Execute(os.Stdout, data)
}
위 코드에서는 text/template
패키지를 사용하여 tmpl
이라는 템플릿을 정의하고, if .Enabled
와 {{else}}
를 사용하여 조건문을 삽입했습니다. 이후에는 템플릿 실행을 통해 조건에 따른 출력을 확인할 수 있습니다.
실행 및 출력 결과
위의 코드를 실행하면 Enabled
필드가 true
로 설정되어 있기 때문에 “Welcome!”이 출력됩니다.
요약
이와 같이 Go 언어의 text/template
및 text/template/exec
패키지를 사용하여 템플릿에 조건문을 삽입하고, 조건에 따른 출력을 생성할 수 있습니다. 이는 템플릿 기반의 동적인 텍스트 출력을 위한 강력한 도구로 활용할 수 있습니다.
더 많은 세부 내용 및 활용 방법은 Go 언어 공식 문서를 참고하시기 바랍니다.