GoFrame 教程
GoFrame 高级特性-类型识别
使用GoFrame ORM查询数据时,由于字段值是一个泛型对象,返回的数据类型将会被自动识别映射到Go变量类型,作为泛型的具体值。 例如: 当字段类型为int(xx…
GoFrame 高级特性-类型转换
gdb的数据记录结果(Value)支持非常灵活的类型转换,并内置支持常用的数十种数据类型的转换。 Value类型是*gvar.Var类型的别名,因此可以使用gva…
GoFrame 高级特性-内嵌结构支持
GoFrame ORM组件针对于struct内嵌结构提供了良好的支持,包括参数传递、结果处理。例如: type Base struct { Uid int `or…
GoFrame 接口开发-基本介绍
gdb模块使用了非常灵活且扩展性强的接口设计,接口设计允许开发者可以非常方便地自定义实现和替换接口定义中的任何方法。 DB接口 接口文档:https://pkg.go.dev/…
GoFrame 接口开发-驱动开发
我们可以通过gdb模块的接口设计实现:新增框架默认不支持的第三方数据库驱动、对已有支持的驱动进行定制化修改等。 驱动注册 之前我们有提到Driver的驱动接口,在实现该接口…
GoFrame 数据库ORM-上下文变量
ORM支持传递自定义的context上下文变量,用于异步IO控制、上下文信息传递(特别是链路跟踪信息的传递)、以及嵌套事务支持。 我们可以通过Ctx方法传递自定义的…
GoFrame NoSQL Redis-基本介绍
基本介绍 Redis客户端由gredis组件实现,底层采用了链接池设计。 为了保证通用性和扩展性,gredis组件采用了命令通道的方式执行Redis操作。当您不知道…
GoFrame NoSQL Redis-配置管理
gredis组件支持两种方式来管理redis配置和获取redis对象,一种是通过配置组件+单例对象的方式;一种是模块化通过配置管理方法及对象创建方法。 配置文件(推荐)…
GoFrame NoSQL Redis-Conn对象
使用Do方法已经能够满足绝大部分的场景需要,如果需要更复杂的Redis操作(例如订阅发布),那么我们可以使用Conn方法从连接池中获取一个连接对象,随后使用该连接对象进…
GoFrame NoSQL Redis-结果处理
可以看到通过客户端方法Do/Receive获取可供方便转换的gvar.Var通用变量结果。通过gvar.Var的强大转换功能可以转换为任意的数据类型,如基本数据类型I…
GoFrame NoSQL Redis-接口化设计
gredis采用接口化设计,具有强大的灵活性和扩展性。 接口定义 https://pkg.go.dev/github.com/gogf/gf/v2/database/gredi…
GoFrame I18N国际化-基本介绍
基本介绍 GoFrame框架提供了常用的I18N国际化组件,由gi18n模块实现。 使用方式: import “github.com/gogf/gf/v2/i18n/g…
GoFrame I18N国际化-使用介绍
对象创建 单例对象 大多数场景下,我们推荐使用g.I18n单例对象,并可自定义配置不同的单例对象,但是需要注意的是,单例对象的配置修改是全局有效的。例如: g.I18n().T…
GoFrame 资源管理-基本介绍
基本介绍 资源管理是指可以将任意文件/目录打包为Golang源码文件,并且编译到可执行文件中,随着可执行文件发布。 资源文件在程序启动时将会自解压释放到内存中,供程序只读访问,可以…
GoFrame 资源管理-工具打包
我们可以通过gf命令行工具的pack命令实现对任意文件/目录的打包。由于通过命令行工具进行打包比较简便,因此也是推荐的打包方式。 gf pack生成Go文件 比较…
GoFrame 资源管理-方法打包
本章节的示例演示打包/解包的同时也演示了对数据的加密/解密。大部分业务项目其实并不需要加密/解密操作,因此直接使用工具打包即可。 在上一章节我们介绍通过gf工具链进行文件/目录…
GoFrame 资源管理-使用示例
我们来看一个使用示例,在该示例中,展示了资源管理在WebServer的静态服务、配置管理、模板引擎中的使用。 资源文件 资源文件源码:https://github.com/go…
GoFrame 资源管理-最佳实践
资源管理设计的目标之一是在开发阶段不影响静态文件的开发管理,只有在发布的时候执行打包即可,打包完毕后清理临时文件,因此只会影响生成的二进制可执行文件,对开发者来说无感知且使用便捷。…
GoFrame gmap-基本介绍
基本介绍 支持并发安全开关选项的map容器,最常用的数据结构。该模块包含多个数据结构的map容器:HashMap、TreeMap和ListMap。 类型 数据结构 平均复杂…
GoFrame gmap-基本使用
并发安全 gmap支持并发安全选项开关,在默认情况下是非并发安全的,开发者可以选择开启gmap的并发安全特性(传递初始化开关参数safe参数值为true, …