不做大哥好多年 不做大哥好多年
首页
  • MySQL
  • Redis
  • Elasticsearch
  • Kafka
  • Etcd
  • MongoDB
  • TiDB
  • RabbitMQ
  • 01.GO基础
  • 02.面向对象
  • 03.并发编程
  • 04.常用库
  • 05.数据库操作
  • 06.Beego框架
  • 07.Beego商城
  • 08.GIN框架
  • 09.GIN论坛
  • 10.微服务
  • 01.Python基础
  • 02.Python模块
  • 03.Django
  • 04.Flask
  • 05.SYL
  • 06.Celery
  • 10.微服务
  • 01.Java基础
  • 02.面向对象
  • 03.Java进阶
  • 04.Web基础
  • 05.Spring框架
  • 100.微服务
  • Docker
  • K8S
  • 容器原理
  • Istio
  • 数据结构
  • 算法基础
  • 算法题分类
  • 前置知识
  • PyTorch
  • 01.Python
  • 02.GO
  • 03.Java
  • 04.业务问题
  • 05.关键技术
  • 06.项目常识
  • 10.计算机基础
  • Linux基础
  • Linux高级
  • Nginx
  • KeepAlive
  • ansible
  • zabbix
  • Shell
  • Linux内核

逍遥子

不做大哥好多年
首页
  • MySQL
  • Redis
  • Elasticsearch
  • Kafka
  • Etcd
  • MongoDB
  • TiDB
  • RabbitMQ
  • 01.GO基础
  • 02.面向对象
  • 03.并发编程
  • 04.常用库
  • 05.数据库操作
  • 06.Beego框架
  • 07.Beego商城
  • 08.GIN框架
  • 09.GIN论坛
  • 10.微服务
  • 01.Python基础
  • 02.Python模块
  • 03.Django
  • 04.Flask
  • 05.SYL
  • 06.Celery
  • 10.微服务
  • 01.Java基础
  • 02.面向对象
  • 03.Java进阶
  • 04.Web基础
  • 05.Spring框架
  • 100.微服务
  • Docker
  • K8S
  • 容器原理
  • Istio
  • 数据结构
  • 算法基础
  • 算法题分类
  • 前置知识
  • PyTorch
  • 01.Python
  • 02.GO
  • 03.Java
  • 04.业务问题
  • 05.关键技术
  • 06.项目常识
  • 10.计算机基础
  • Linux基础
  • Linux高级
  • Nginx
  • KeepAlive
  • ansible
  • zabbix
  • Shell
  • Linux内核
  • GO基础

  • 面向对象

  • 并发编程

  • 常用库

  • 数据库操作

  • Beego框架

    • 01.Beego安装
    • 02.Beego创建项目
    • 03.获取参数传值
    • 04.路由
    • 05.模板基本使用
    • 06.Model封装公共方法
      • 01.关于Model
      • 02.Model 里面封装公共的方法
        • 2.1 models下面新建tools.go
        • 2.2 控制器中引入使用models
        • 2.3 注册为自定义模板函数
    • 07.Config参数配置
    • 08.Cookie
    • 09.Session
    • 10.日志模块
    • 11.上传文件
    • 12.GORM操作
    • 13.GORM查询
    • 14.GORM 关联查询
    • 15.GORM原生SQL
  • Beego商城

  • GIN框架

  • GIN论坛

  • 微服务

  • 设计模式

  • Go
  • Beego框架
xiaonaiqiang
2021-05-24
目录

06.Model封装公共方法

# 01.关于Model

  • 如果我们的应用非常简单的话,我们可以在 Controller 里面处理常见的业务逻辑。
  • 但是如果我们有一个功能想在多个控制器、或者多个模板里面复用的话
  • 那么我们就可以把公共的功能单独抽取出来作为一个模块(Model)
  • Model 是逐步抽象的过程,一般我们会在 Model里面封装一些公共的方法让不同 Controller 使用
  • 也可以在 Model 中实现和数据库打交道。

# 02.Model 里面封装公共的方法

# 2.1 models下面新建tools.go

package models
import (
	"time"
)

func UnixToDate(timestamp int) string {
	t := time.Unix(int64(timestamp), 0)
	return t.Format("2006-01-02 15:04:05")
}
1
2
3
4
5
6
7
8
9

# 2.2 控制器中引入使用models

package controllers
import (
	"beegodemo02/models"
	"fmt"
	"github.com/astaxie/beego"
)

type UserController struct {
	beego.Controller
}
func (this *UserController) UsersGet() {
	unix := 1589898013
	str := models.UnixToDate(unix)
	fmt.Println(str)   // 2020-05-19 22:20:13
	this.Ctx.WriteString("index")
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 2.3 注册为自定义模板函数

package main
import (
	"beegodemo02/models"
	_ "beegodemo02/routers"
	"github.com/astaxie/beego"
)

func main() {
	beego.AddFuncMap("UnixToDate", models.UnixToDate)
	beego.Run()
}
1
2
3
4
5
6
7
8
9
10
11
上次更新: 2024/3/13 15:35:10
05.模板基本使用
07.Config参数配置

← 05.模板基本使用 07.Config参数配置→

最近更新
01
04.数组双指针排序_子数组
03-25
02
08.动态规划
03-25
03
06.回溯算法
03-25
更多文章>
Theme by Vdoing | Copyright © 2019-2025 逍遥子 技术博客 京ICP备2021005373号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式