Beego框架学习---layout的使用

在管理系统中,管理菜单的界面是固定的,会变化的只是中间的部分。我就在想,是不是跟angular的“组件模块的router-outlet一样”每次只用修改中间的内容部分,菜单和导航栏不变。

果不其然,beego框架也是支持layout的设计。

  • 首先,在views目录下创建一个layout.html,这个html文件中把整个的页面框架设计好,在需要替换的内容的地方写成{{.layoutContent}}
   <div>
<!-- Content Header (Page header) -->
{{.ContentHead}}
<!-- Main content -->
{{.LayoutContent }}
</div>
  • 然后再路由转到的controller的方法内,定义页面的布局和内容。
  func (this *Usercontroller)Get()  {
this.Data["Title"] = "用户管理"
this.Layout = "layout.html"
this.LayoutSections = make(map[string]string)
this.LayoutSections["CustomJs"] = "customjs/user.html"
this.LayoutSections["CustomCss"] = ""
this.LayoutSections["ContentHead"] = "contenthead2.html"
this.LayoutSections["Menu"] = "menu.html"
this.TplName = "user.html"
this.Data["undesgin"], _ = mgo.Listuser()
  • 此时,beego就会首先解析TplNames指定的文件,获取内容赋值给LayoutContent,然后最后渲染layout.html文件。展示user.html页面

Beego框架学习---layout的使用的更多相关文章

  1. Beego框架学习--(核心:数据交互)

    Beego框架学习记录 1.beego简介 beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API.Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计 ...

  2. Beego 框架学习(一)

    Beego官网本身已经整理的非常详细了,但是作为一个学习者,我还是决定自己好好整理一下,这样在后面使用的时候自己对每部分才能非常熟悉,及时忘记了,也可以迅速定位自己要用的知识在哪里.当然也是对官网的一 ...

  3. Beego 框架学习(一)

    1.特性 beego是一个http框架 高性能,是目前最快的的go框架 开发快捷,组件多,高度解耦 RESTful方式,可以自定义action 文档完整 智能路由.智能监控 2.安装 go get g ...

  4. beego框架学习(二) -路由设置

    路由设置 什么是路由设置呢?前面介绍的 MVC 结构执行时,介绍过 beego 存在三种方式的路由:固定路由.正则路由.自动路由,接下来详细的讲解如何使用这三种路由. 基础路由 从beego1.2版本 ...

  5. beego框架学习--beego orm映射

    什么是ORM 即Object-Relationl Mapping,它的作用是在关系型数据库和对象之间作一个映射,这样,我们在具体的操作数据库的时候,就不需要再去和复杂的SQL语句打交道,只要像平时操作 ...

  6. beego框架学习(三) -orm的使用

    2 3 4 5 6 7 8 9 10 11 目前beego-orm支持的数据有: - MySQL:https://github.com/go-sql-driver/mysql - PostgreSQL ...

  7. golang学习之beego框架配合easyui实现增删改查及图片上传

    golang学习之beego框架配合easyui实现增删改查及图片上传 demo目录: upload文件夹主要放置上传的头像文件,main是主文件,所有效果如下: 主页面: 具体代码: <!DO ...

  8. beego框架(golang)学习验证码

    beego框架(golang)学习验证码 登录页面使用验证码 路由设置 /beego_admin_template/routers/router.go get请求页面, post验证用户名密码和验证码 ...

  9. Yii框架学习笔记(二)将html前端模板整合到框架中

    选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/ ...

随机推荐

  1. OpenCV3.2+Python3.5+Ubuntu16.04+缺少boostdesc和vgg_generated

    问题: OpenCV3.2在cmake通过https无法获取boostdesc和vgg_generated2类文件 可尝试的解决方法: 参考, 依其方法至这里做调整, 最后注释xfeatures2d/ ...

  2. Python errors All In One

    Python errors All In One SyntaxError: invalid character in identifier \u200b, ZERO WIDTH SPACE https ...

  3. TypeScript TSConfig All In One

    TypeScript TSConfig All In One tsconfig.json https://www.typescriptlang.org/tsconfig https://www.typ ...

  4. vue3 deep dive

    vue3 deep dive vue core vnode vue core render / mount / patch refs https://www.vuemastery.com/course ...

  5. linux bash which

    linux bash which https://linuxize.com/post/linux-which-command/ Linux which command is used to ident ...

  6. Flutter 使用 flare

    video flare_flutter 工作示例 install dependencies: flare_flutter: ^1.5.5 assets: - assets/flr/switch_day ...

  7. Error Code: 1452 Cannot add or update a child row: a foreign key constraint fails

    错误: Error Code: 1452 Cannot add or update a child row: a foreign key constraint fails 错误产生情景:我向一张带外键 ...

  8. 疯狂的String

    本文转载自疯狂的String 导语 在java中字符串是我们比较常用的一个类型,字符串是不可变的,类被声明为final , 存储字符的char[] value数据也被声明为final ,我们对Stri ...

  9. Anno&Viper -分布式锁服务端怎么实现

    1.Anno简介 Anno是一个微服务框架引擎.入门简单.安全.稳定.高可用.全平台可监控.依赖第三方框架少.底层通讯RPC(Remote Procedure Call)采用稳定可靠经过无数成功项目验 ...

  10. 线段树&数链剖分

    傻逼线段树,傻逼数剖 线段树 定义: 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点. 使用线段树可以快速的查找某一个节点在若干条线段中出现 ...