概述
gfast使用goframe框架作为底层,使用前请先查阅goframe的相关模板文档
goframe模板文档链接
使用gofast cms模板示例
// index 控制器
func (c *cmsIndex) Index(r *ghttp.Request) {
ctx := r.GetCtx()
// 创建cms模板视图对象 *gview.view
v,err := service.CmsTemplate.GetCmsView(ctx)
if err != nil {
r.Response.WriteExit(err.Error())
}
// 注册全局模板变量
v.Assign("seoTitle",service.CmsConfig.GetCmsConfigValueByName("home_title"))
v.Assign("seoKeywords",service.CmsConfig.GetCmsConfigValueByName("home_keywords"))
v.Assign("seoDescription",service.CmsConfig.GetCmsConfigValueByName("home_desc"))
v.Assign("homeUrl",service.CmsConfig.GetCmsConfigValueByName("home_url"))
v.Assign("siteName",service.CmsConfig.GetCmsConfigValueByName("site_name"))
// 渲染布局文件
err = library.WriteTpl(r, "common/layout.html",v,gview.Params{
"mainTpl": "index.html", // 注意,此变量只在 layout.html模板中有效,如果嵌套模板要使用需要向下传递 ${include .mainTpl .}
})
if err != nil {
r.Response.WriteExit(err.Error())
}
}
布局文件common/layout.html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<meta content="webkit" name="renderer">
<meta content="initial-scale=1.0,maximum-scale=5,width=device-width,viewport-fit=cover" name="viewport">
<title>${.seoTitle}</title>
<meta content="${.seoKeywords}" name="keywords">
<meta content="${.seoDescription}" name="description">
</head>
<body>
<!--引入公共头部-->
${include "common/header.html"}
<!--引入内容模板 index.html -->
${include .mainTpl}
<!--引入公共底部-->
${include "common/footer.html"}
</body>
</html>
注意事项:
使用布局文件时,
作者:袁学飞 创建时间:2023-03-08 11:32
最后编辑:袁学飞 更新时间:2024-05-23 09:03
最后编辑:袁学飞 更新时间:2024-05-23 09:03