はじめに
Go言語のフレームワークEchoを使っています。
テンプレートの表示の仕方を公式ドキュメントから読んで無事ブラウザに表示させることに成功しました。
が、複数テンプレートを表示させたい場合はどうすればよいか悩んでいます。
テンプレートの構成
.views
├── index.html(子)
└── layout.html(親)
期待するもの
layout, index ともにルートへGETしたときにレンダーされるようにしたいです。
コード
現在は下記のように1つのテンプレートしかレンダーさせることが出来ません。
go
1type Template struct { 2 templates *template.Template 3} 4 5func (t *Template) Render(w io.Writer, name string, data interface{}, c echo.Context) error { 6 return t.templates.ExecuteTemplate(w, name, data) 7} 8 9func Echosample(c echo.Context) error { 10 u := User{ 11 UUID: "anir5q79u3rwejg", 12 Name: "サンプル", 13 } 14 return c.Render(http.StatusOK, "index", u) 15} 16 17func main() { 18 e := echo.New() 19 20 t := &Template{ 21 templates: template.Must(template.ParseGlob("app/views/*.html")), 22 } 23 e.Renderer = t 24 25 e.GET("/", Echosample) 26 27 e.Logger.Fatal(e.Start(":8000")) 28} 29
あなたの回答
tips
プレビュー