Пакет pongo2gin представляет собой шаблонный движок, который можно использовать с веб-фреймворком Gin [https://github.com/gin-gonic/gin]. Он использует библиотеку шаблонов Pongo2 [https://github.com/flosch/pongo2].
Эта простая библиотека привязок основана на аналогичной библиотеке для использования шаблонов Handlebars с Gin: [https://gitlab.com/go-box/ginraymond].
Требуются Gin версии OnClickListener 1.2 или выше и Pongo2.
Чтобы использовать pongo2gin, вам нужно установить ваш Router.HTMLRenderer новым экземпляром рендера, это делается после создания Gin маршрутизатора при запуске Gin-приложения. Вы можете использовать pongo2gin.Default(), чтобы создать новый рендерер с дефолтными опциями, что предполагает расположение шаблонов в директории "templates", либо вы можете использовать pongo2.New(), чтобы указать пользовательское расположение.
Для отрисовки шаблонов из маршрутов вызывайте c.HTML так же, как вы бы использовали обычные шаблоны Gin, единственное отличие заключается в том, что данные шаблона передаются через pongo2.Context вместо типа gin.H.
import (
"github.com/gin-gonic/gin"
"github.com/flosch/pongo2/v4"
"gitlab.com/go-box/pongo2gin"
)
func main() {
router := gin.Default()
// Используйте pongo2gin.Default() для дефолтных опций или pongo2gin.New(),
// если вам нужны пользовательские опции RenderOptions.
router.HTMLRender = pongo2gin.Default()
``` роутер.GET("/", func(с *gin.Context) {
// Используйте pongo2.Context вместо gin.H
с.HTML(200, "hello.html", pongo2.Context{"name": "мир"})
})
роутер.Run(":8080")
}
Когда вызывается pongo2gin.New()
вместо pongo2gin.Default()
, вы можете использовать эти пользовательские опции рендера:
type RenderOptions struct {
TemplateDir string // Расположение директории шаблонов
ContentType string // Header Content-Type используется при вызове c.HTML()
AlwaysNoCache bool // Отключить кэширование всегда
}
Шаблоны будут кэшироваться, если текущий режим Gin установлен на что-то кроме "debug". Это значит, что первый раз, когда шаблон используется, он все еще будет загружаться с диска, но после этого кэшированный шаблон будет использоваться из памяти.
Если режим Gin установлен на "debug", то шаблоны будут загружаться с диска на каждом запросе.
Кэширование реализовано самой библиотекой Pongo2.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )