GoravelGoravel
首页
视频
  • English
  • 简体中文
GitHub
首页
视频
  • English
  • 简体中文
GitHub
  • 前言

    • 升级指南

      • 从 v1.14 升级到 v1.15
      • 从 v1.13 升级到 v1.14
      • 历史版本升级
    • 贡献指南
    • 优秀扩展包
  • 入门指南

    • 安装
    • 配置信息
    • 文件夹结构
    • 编译
  • 核心架构

    • 请求周期
    • 服务容器
    • 服务提供者
    • Facades
  • 基本功能

    • 路由
    • HTTP 中间件
    • 控制器
    • 请求
    • 响应
    • 视图
    • Grpc
    • Session
    • 表单验证
    • 日志
  • 综合话题

    • Artisan 命令行
    • 缓存系统
    • 事件系统
    • 文件储存
    • 邮件
    • 队列
    • 任务调度
    • 本地化
    • 扩展包开发
    • 颜色
    • Strings
    • 辅助函数
  • 安全相关

    • 用户验证
    • 用户授权
    • 加密解密
    • 哈希
  • ORM

    • 快速入门
    • 模型关联
    • 数据库迁移
    • 数据填充
    • 模型工厂
  • 测试相关

    • 快速入门
    • HTTP Tests
    • Mock

从 v1.7 升级到 v1.8

  • 令人兴奋的新功能 🎉
  • 功能增强 🚀
  • 破坏性变化 🛠
  • Bug 修复 🐛
  • 升级指南
    • 更新依赖
    • Orm 新增模型关联
    • Request 新增方法
    • Response 新增方法
    • 优化 import 顺序
    • 优化数据库迁移
    • mock.Validator 改名
    • support.Mysql 改名
    • 即将废弃 database.NewGormInstance
    • 修复 Orm 并发安全的问题
    • 修复 Mail 不能使用 25,465 端口发送邮件的问题
    • Route 支持 HTTPS

令人兴奋的新功能 🎉

  • Orm 新增模型关联(1.8.0)

功能增强 🚀

  • Request 新增方法(1.8.0)
  • Response 新增方法(1.8.0)
  • 优化数据库迁移(1.8.0)
  • Route 支持 HTTPS(1.8.3)

破坏性变化 🛠

  • 优化 import 顺序(1.8.0)
  • mock.Validator 改名(1.8.0)
  • support.Mysql 改名(1.8.0)
  • 即将废弃 database.NewGormInstance(1.8.0)

Bug 修复 🐛

  • 修复 Orm 并发安全的问题(1.8.1)
  • 修复 Mail 不能使用 25,465 端口发送邮件的问题(1.8.2)

升级指南

预计升级时间:1 分钟

更新依赖

go.mod 中更新依赖:

go get -u github.com/goravel/framework@v1.8.3

Orm 新增模型关联

Version: v1.8.0

Orm 新增方法,以处理模型关联等操作:

方法名作用
Association关联操作
DB获取通用数据库接口
Load延迟预加载
LoadMissing延迟预加载(不存在)
Omit忽略关联
With预加载

Request 新增方法

Version: v1.8.0

ctx.Request() 新增方法,以丰富 Query 传参的格式:

方法名作用
QueryArray获取链接传入的数组参数
QueryMap获取链接传入的 Map 参数

Response 新增方法

Version: v1.8.0

ctx.Response() 新增 Origin 方法,可以在 HTTP 中间件中获取 Response 的所有信息。

查看文档

优化 import 顺序

Version: v1.8.0

bootstrap/app.go 文件中 import 顺序修改为:

package bootstrap

import (
  "github.com/goravel/framework/foundation"

  "goravel/config"
)

查看文件

优化数据库迁移

Version: v1.8.0

运行生成数据库迁移文件命令 go run . artisan make:migration create_users_table,将根据当前使用的默认数据库驱动 facades.Config.GetString("database.default") 生成对应的迁移文件。

mock.Validator 改名

Version: v1.8.0

如果您使用了 mock.Validator 来编写单元测试,需要进行下面修改:

import "github.com/goravel/framework/testing/mock"

mock.Validator

// 修改为

import "github.com/goravel/framework/testing/mock"

mock.Validation

查看文档

support.Mysql 改名

Version: v1.8.0

如果您使用了 support.Mysql 等框架常量来进行数据库驱动的判断,需要进行如下修改:

import "github.com/goravel/framework/database/support"

support.Mysql
support.Postgresql
support.Sqlite
support.Sqlserver

// 修改为

import "github.com/goravel/framework/contracts/database/orm"

orm.Mysql
orm.Postgresql
orm.Sqlite
orm.Sqlserver

orm.Mysql 等新的常量为 orm.Driver 类型,可以使用 orm.Mysql.String() 方法转换为字符类型。

即将废弃 database.NewGormInstance

Version: v1.8.0

database.NewGormInstance 方法将在 v1.9.0 被废弃,当前版本尚可使用,如果您使用了该方法获取 gorm 实例,需要进行如下修改:

import "github.com/goravel/framework/database"

gorm, err := database.NewGormInstance(connection)

// 修改为

import "github.com/goravel/framework/database/gorm"

gorm, err := gorm.New(connection)

修复 Orm 并发安全的问题

Version: v1.8.1

修复当高并发访问时,第一次读取 facades.Orm 有可能返回 Nil。

修复 Mail 不能使用 25,465 端口发送邮件的问题

Version: v1.8.2

您现在可以使用 25,465,587 发送邮件了。

Route 支持 HTTPS

Version: v1.8.3

facades.Route 新增 RunTLS 方法,支持启动 HTTPS 服务器,详见文档。

Edit this page