Documentation
¶
Index ¶
- func NewDBManager(cfg contracts.Config, log contracts.Log) (contracts.DB, error)
- func NewOrm(cfg contracts.Config, log contracts.Log) (contracts.Orm, error)
- func RegisterDriver(name string, f DriverFactory)
- type AfterCreator
- type AfterDeleter
- type AfterFinder
- type AfterUpdater
- type BeforeCreator
- type BeforeDeleter
- type BeforeUpdater
- type ConnectionConfig
- type DriverFactory
- type Model
- type ModelWithSoftDelete
- type ServiceProvider
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewDBManager ¶
NewDBManager 创建数据库管理器实例,自动检测新/旧配置格式。
func RegisterDriver ¶
func RegisterDriver(name string, f DriverFactory)
RegisterDriver 由插件的 ServiceProvider 在启动时调用,注册 ORM 驱动工厂。
Types ¶
type AfterCreator ¶
type AfterCreator = contracts.AfterCreator
AfterCreator 创建后钩子(= contracts.AfterCreator)
type AfterDeleter ¶
type AfterDeleter = contracts.AfterDeleter
AfterDeleter 删除后钩子(= contracts.AfterDeleter)
type AfterFinder ¶
type AfterFinder = contracts.AfterFinder
AfterFinder 查询后钩子(= contracts.AfterFinder)
type AfterUpdater ¶
type AfterUpdater = contracts.AfterUpdater
AfterUpdater 更新后钩子(= contracts.AfterUpdater)
type BeforeCreator ¶
type BeforeCreator = contracts.BeforeCreator
BeforeCreator 创建前钩子(= contracts.BeforeCreator)
type BeforeDeleter ¶
type BeforeDeleter = contracts.BeforeDeleter
BeforeDeleter 删除前钩子(= contracts.BeforeDeleter)
type BeforeUpdater ¶
type BeforeUpdater = contracts.BeforeUpdater
BeforeUpdater 更新前钩子(= contracts.BeforeUpdater)
type ConnectionConfig ¶
type ConnectionConfig = contracts.ConnectionConfig
ConnectionConfig 是 contracts.ConnectionConfig 的类型别名,保持向后兼容。 具体定义已移至 contracts 包,以避免 database ↔ gormdriver 的循环依赖。
type DriverFactory ¶
DriverFactory 根据连接配置创建 Driver。
type Model ¶
type Model struct {
ID string `gorm:"primaryKey;size:36;column:id" xorm:"pk varchar(36) 'id'" json:"id"`
CreatedAt int64 `gorm:"autoCreateTime;column:created_at" xorm:"created 'created_at'" json:"created_at"`
UpdatedAt int64 `gorm:"autoUpdateTime;column:updated_at" xorm:"updated 'updated_at'" json:"updated_at"`
}
Model 基础模型,所有业务模型应嵌入此结构体。 ID 为 UUID v7 字符串主键,由框架层 BeforeCreate Hook 自动生成。
type ModelWithSoftDelete ¶
type ModelWithSoftDelete struct {
Model
DeletedAt int64 `gorm:"column:deleted_at;index;default:0" xorm:"'deleted_at' index default(0)" json:"deleted_at"`
}
ModelWithSoftDelete 带软删除的基础模型。
type ServiceProvider ¶
type ServiceProvider struct{}
ServiceProvider Database 服务提供者。
func (*ServiceProvider) Boot ¶
func (sp *ServiceProvider) Boot(app foundation.Application) error
func (*ServiceProvider) Register ¶
func (sp *ServiceProvider) Register(app foundation.Application)