书栈网 · BookStack 本次搜索耗时 0.021 秒,为您找到 718 个相关结果.
  • 声明模型

    模型定义 约定 gorm.Model 高级选项 字段级权限控制 创建/更新时间追踪(纳秒、毫秒、秒、Time) 嵌入结构体 字段标签 关联标签 模型定义 模型是标准的 struct,由 Go 的基本数据类型、实现了 Scanner 和 Valuer 接口的自定义类型及其指针或别名组成 例如: type User stru...
  • Has Many

    Has Many 重写外键 重写引用 多态关联 Has Many 的 CURD 预加载 自引用 Has Many 外键约束 Has Many has many 与另一个模型建立了一对多的连接。 不同于 has one ,拥有者可以有零或多个关联模型。 例如,您的应用包含 user 和 credit card 模型,且每个 user 可...
  • 数据类型

    实现数据类型 Scanner / Valuer GormDataTypeInterface Clause Expression 自定义数据类型集合 GORM 提供了少量接口,使用户能够为 GORM 定义支持的数据类型,这里以 json 为例 实现数据类型 Scanner / Valuer 自定义的数据类型必须实现 Scanner 和...
  • 预加载

    预加载 Joins 预加载 预加载全部 带条件的预加载 自定义预加载 SQL 嵌套预加载 预加载 GORM 允许在 Preload 的其它 SQL 中直接加载关系,例如: type User struct { gorm . Model Username string Orders [] ...
  • 复合主键

    通过将多个字段设为主键,以创建复合主键,例如: type Product struct { ID string `gorm:"primaryKey"` LanguageCode string `gorm:"primaryKey"` Code string Name ...
  • 复合主键

    通过将多个字段设为主键,以创建复合主键,例如: type Product struct { ID string `gorm:"primaryKey"` LanguageCode string `gorm:"primaryKey"` Code string ...
  • Logger

    Logger 日志级别 Debug 自定义 Logger Logger Gorm 有一个 默认 logger 实现 ,默认情况下,它会打印慢 SQL 和错误 Logger 接受的选项不多,您可以在初始化时自定义它,例如: newLogger := logger . New ( log . New ( os . Stdout , ...
  • 事务

    事务 禁用默认事务 事务 嵌套事务 手动事务 一个特殊的示例 SavePoint、RollbackTo 事务 禁用默认事务 为了确保数据一致性,GORM 会在事务里执行写入操作(创建、更新、删除)。如果没有这方面的要求,您可以在初始化时禁用它,这将获得大约 30%+ 性能提升。 // 全局禁用 db , err := gorm...
  • 性能

    禁用默认事务 缓存 Prepared Statement 带 PreparedStmt 的 SQL 生成器 选择字段 Iteration / FindInBatches Index Hints GORM 已经优化了许多东西来提高性能,其默认性能对大多数应用来说都够用了。但这里还是有一些关于如何为您的应用改进性能的方法。 禁用默认事务 对...
  • 更新

    保存所有字段 更新单个列 更新多列 更新选定字段 更新 Hook 批量更新 阻止全局更新 更新的记录数 高级选项 使用 SQL 表达式更新 根据子查询进行更新 不使用 Hook 和时间追踪 返回修改行的数据 检查字段是否有变更? 在 Update 时修改值 保存所有字段 Save 会保存所有的字段,即使字段是零值 db ...