Documentation
¶
Index ¶
- Constants
- Variables
- func AppendAssociation[T any, R any](source *T, field string, associations R, ctx ...*gorm.DB) error
- func Close()
- func Create(data any, ctx ...*gorm.DB) error
- func CreateDatabase(dbname string) error
- func CreateTable(model any) error
- func DelAssociation[T any](field string, query ...GenericQuery) error
- func Delete(data any, ctx ...*gorm.DB) error
- func DeleteByCondition[T any](condition T, ctx ...*gorm.DB) error
- func DeleteCache[T any](p *DeleteCachePayload[T]) error
- func DropTable(model any) error
- func GetAll[T any](query ...GenericQuery) ([]T, error)
- func GetAny[T any](sql string, data ...interface{}) (T, error)
- func GetCache[T any](p *GetCachePayload[T]) (*T, error)
- func GetCount[T any](query ...GenericQuery) (int64, error)
- func GetOne[T any](query ...GenericQuery) (T, error)
- func GetSum[T any, R genericComparableConstraint](fields string, query ...GenericQuery) (R, error)
- func Init(config *app.Config)
- func ReplaceAssociation[T any, R any](source *T, field string, associations []R, ctx ...*gorm.DB) error
- func Run(query ...GenericQuery) error
- func Update(data any, ctx ...*gorm.DB) error
- func UpdateCache[T any](p *UpdateCachePayload[T]) error
- func WithTransaction(fn func(tx *gorm.DB) error, ctx ...*gorm.DB) error
- type DeleteCachePayload
- type GenericQuery
- func Action(fn func(tx *gorm.DB)) GenericQuery
- func Dec[T genericComparableConstraint](updates map[string]T) GenericQuery
- func Equal[T genericEqualConstraint](field string, value T) GenericQuery
- func EqualOr[T genericEqualConstraint](field string, value T) GenericQuery
- func Fields(fields ...string) GenericQuery
- func GreaterThan[T genericComparableConstraint](field string, value T) GenericQuery
- func GreaterThanOrEqual[T genericComparableConstraint](field string, value T) GenericQuery
- func InArray(field string, value []interface{}) GenericQuery
- func Inc[T genericComparableConstraint](updates map[string]T) GenericQuery
- func Join(field string) GenericQuery
- func LessThan[T genericComparableConstraint](field string, value T) GenericQuery
- func LessThanOrEqual[T genericComparableConstraint](field string, value T) GenericQuery
- func Like(field string, value string) GenericQuery
- func Model(model any) GenericQuery
- func NotEqual[T genericEqualConstraint](field string, value T) GenericQuery
- func OrderBy(field string, desc bool) GenericQuery
- func Page(page int, pageSize int) GenericQuery
- func Preload(model string, args ...interface{}) GenericQuery
- func WLock() GenericQuery
- func Where[T any](model *T) GenericQuery
- func WhereSQL(sql string, args ...interface{}) GenericQuery
- func WithBit[T genericComparableConstraint](field string, value T) GenericQuery
- func WithTransactionContext(tx *gorm.DB) GenericQuery
- func WithoutBit[T genericComparableConstraint](field string, value T) GenericQuery
- type GetCachePayload
- type KeyValuePair
- type UpdateCachePayload
Constants ¶
View Source
const ( CACHE_PREFIX = "cache" CACHE_EXPIRE_TIME = time.Minute * 5 )
Variables ¶
View Source
var DifyPluginDB *gorm.DB
View Source
var (
ErrDatabaseNotFound = gorm.ErrRecordNotFound
)
Functions ¶
func AppendAssociation ¶
func CreateDatabase ¶
NOTE: not used in production, only for testing
func DelAssociation ¶
func DelAssociation[T any](field string, query ...GenericQuery) error
func DeleteCache ¶
func DeleteCache[T any](p *DeleteCachePayload[T]) error
func GetAll ¶
func GetAll[T any](query ...GenericQuery) ([]T, error)
func GetCache ¶
func GetCache[T any](p *GetCachePayload[T]) (*T, error)
func GetOne ¶
func GetOne[T any](query ...GenericQuery) (T, error)
func GetSum ¶
func GetSum[T any, R genericComparableConstraint](fields string, query ...GenericQuery) (R, error)
func ReplaceAssociation ¶
func Run ¶
func Run(query ...GenericQuery) error
func UpdateCache ¶
func UpdateCache[T any](p *UpdateCachePayload[T]) error
Types ¶
type DeleteCachePayload ¶
type DeleteCachePayload[T any] struct { Delete func() error CacheKey []KeyValuePair }
type GenericQuery ¶
func Action ¶
func Action(fn func(tx *gorm.DB)) GenericQuery
func Dec ¶
func Dec[T genericComparableConstraint](updates map[string]T) GenericQuery
func Equal ¶
func Equal[T genericEqualConstraint](field string, value T) GenericQuery
func EqualOr ¶
func EqualOr[T genericEqualConstraint](field string, value T) GenericQuery
func Fields ¶
func Fields(fields ...string) GenericQuery
func GreaterThan ¶
func GreaterThan[T genericComparableConstraint](field string, value T) GenericQuery
func GreaterThanOrEqual ¶
func GreaterThanOrEqual[T genericComparableConstraint](field string, value T) GenericQuery
func InArray ¶
func InArray(field string, value []interface{}) GenericQuery
func Inc ¶
func Inc[T genericComparableConstraint](updates map[string]T) GenericQuery
func Join ¶
func Join(field string) GenericQuery
func LessThan ¶
func LessThan[T genericComparableConstraint](field string, value T) GenericQuery
func LessThanOrEqual ¶
func LessThanOrEqual[T genericComparableConstraint](field string, value T) GenericQuery
func Like ¶
func Like(field string, value string) GenericQuery
func Model ¶
func Model(model any) GenericQuery
func NotEqual ¶
func NotEqual[T genericEqualConstraint](field string, value T) GenericQuery
func OrderBy ¶
func OrderBy(field string, desc bool) GenericQuery
func Page ¶
func Page(page int, pageSize int) GenericQuery
func Preload ¶
func Preload(model string, args ...interface{}) GenericQuery
func WLock ¶
func WLock() GenericQuery
func Where ¶
func Where[T any](model *T) GenericQuery
func WhereSQL ¶
func WhereSQL(sql string, args ...interface{}) GenericQuery
func WithBit ¶
func WithBit[T genericComparableConstraint](field string, value T) GenericQuery
bitwise operation
func WithTransactionContext ¶
func WithTransactionContext(tx *gorm.DB) GenericQuery
Should be used first in query chain
func WithoutBit ¶
func WithoutBit[T genericComparableConstraint](field string, value T) GenericQuery
type GetCachePayload ¶
type GetCachePayload[T any] struct { Getter func() (*T, error) CacheKey []KeyValuePair }
type KeyValuePair ¶
type UpdateCachePayload ¶
type UpdateCachePayload[T any] struct { Update func() error CacheKey []KeyValuePair }
Click to show internal directories.
Click to hide internal directories.