Golang은 간단한 구문, 높은 실행 효율성 및 강력한 가독성을 갖춘 매우 인기 있는 프로그래밍 언어입니다. Golang에서 템플릿 생성은 일반적인 개발 요구 사항이며 개발 효율성을 높이기 위해 다양한 코드나 문서 템플릿을 생성하는 데 사용할 수 있습니다. 이 기사에서는 Golang을 사용하여 템플릿 메소드를 생성하는 방법을 소개합니다.
1. 템플릿 언어
Golang의 템플릿 언어는 태그와 같은 방법을 사용하여 템플릿에서 교체해야 할 부분을 식별합니다. 태그에는 일반적으로 "{{" 및 "}}"라는 두 가지 유형이 포함됩니다. 이 두 태그 사이에 교체해야 할 일부 값이나 표현식을 삽입할 수 있습니다. 예를 들어, {{.}}는 전체 데이터 구조 자체를 나타내고, {{.FieldName}}은 구조의 필드 값을 나타내고, {{range .List}}{{.}}{{end}}는 순회를 나타냅니다. 그룹 데이터.
동시에 템플릿 구문에서는 조건부 판단문, 루프문, 함수 호출 등과 같은 작업도 지원합니다. 구체적인 구문은 다음과 같습니다.
1. 조건부 판단문
{{if .Condition}}
<!-- Code block if the condition is true -->
{{else}}
<!-- Code block if the condition is false -->
{{end}}
예:
{{if eq .Color "Red"}}
This is a red car
{{else}}
This is not a red car
{{end}}
2. 루프 문
{{range .List}}
<!-- Code block for each element in the list -->
{{end}}
예를 들어 :
{{ range .List}}
This is a {{.Color}} {{.Brand}} car
{{end}}
3. 함수 호출
{{FuncName .Parameter}}
예:
{{dateformat .CreateTime "yyyy-MM- dd HH:mm:ss "}}
2. 템플릿 파일
Golang에서는 템플릿 파일을 정의하여 템플릿 생성 목적을 달성할 수 있습니다. 일반적으로 템플릿 파일을 다양한 기능에 따라 나누거나 다양한 파일을 생성할 수 있습니다. 모든 템플릿을 동일한 파일에 넣을 수도 있습니다. 템플릿 파일에서는 위의 템플릿 언어를 사용하여 템플릿을 작성할 수 있습니다.
예를 들어 HTML 파일을 생성해야 하는 경우 다음과 같이 템플릿 파일을 작성할 수 있습니다.
8b05045a5be5764f313ed5b9168a17e6
100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e
<meta charset="UTF-8"> <title>{{.Title}}</title>
9c3bca370b5104690d9ef395f2c5f8d1
< ;body>
<h1>{{.Heading}}</h1> {{range .Articles}} <h2>{{.Title}}</h2> <p>{{.Content}}</p> {{end}}
36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e
3. 템플릿 생성
Golang에서는 "text/template" 패키지 또는 "html/template" 패키지를 사용하여 템플릿을 생성할 수 있습니다. 둘 사이의 주요 차이점은 "html/template"이 XSS 공격을 피하기 위해 생성된 문자열을 이스케이프한다는 것입니다.
"text/template" 패키지 또는 "html/template" 패키지를 사용하기 전에 데이터 모델을 준비해야 합니다. 여기서는 이를 표현할 구조를 사용할 수 있습니다. 예를 들어 기사를 표현하는 데 사용되는 구조는 다음과 같습니다.
type Article struct {
Title string Content string
}
또한 다음과 같이 페이지의 데이터 모델을 표현하는 구조를 정의해야 합니다.
type PageData struct {
Title string Heading string Articles []Article
}
그런 다음 "ParseFiles" 함수를 사용하여 템플릿 파일을 구문 분석하고 처리된 템플릿 개체를 반환할 수 있습니다.
t, err := template.ParseFiles("template.html")
다음으로 우리는 데이터 모델은 처리된 템플릿 개체에 전달되어 최종 문자열을 생성합니다.
err = t.Execute(os.Stdout, data)
여기서 첫 번째 매개변수는 출력 위치이며 os.Stdout, bytes일 수 있습니다. .Buffer 등 두 번째 매개변수는 데이터 모델입니다.
파일을 생성하려면 "os.Create"를 사용하여 파일을 만든 다음 "t.Execute" 함수에 전달할 수 있습니다.
f, err := os.Create("output.html ")
defer f.Close()
err = t.Execute(f, data)
이로써 기본 Golang 템플릿 생성 방법이 완성되었습니다.
결론
Golang의 템플릿 생성 기능은 매우 강력하며 다양한 코드나 문서 템플릿을 생성하는 데 사용할 수 있습니다. 실제로는 사용자 정의 기능, 템플릿 상속, 동적 템플릿 생성 등과 같이 템플릿 생성 프로세스에 적용할 수 있는 다른 많은 고급 기능과 기술이 있습니다. 이 글이 초보자들에게 기본적인 시작 방향을 제공할 수 있기를 바랍니다.
위 내용은 golang은 템플릿 메소드를 생성합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!