updater

package
v1.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 8, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AfterOpContext added in v0.12.0

type AfterOpContext struct {
	Col          *mongo.Collection `opt:"-"`
	*CondContext `opt:"-"`
}

func NewAfterOpContext added in v0.12.0

func NewAfterOpContext(col *mongo.Collection, condContext *CondContext, opts ...AfterOpContextOption) *AfterOpContext

type AfterOpContextOption added in v0.12.0

type AfterOpContextOption func(*AfterOpContext)

type BeforeOpContext added in v0.12.0

type BeforeOpContext struct {
	Col          *mongo.Collection `opt:"-"`
	*CondContext `opt:"-"`
}

func NewBeforeOpContext added in v0.12.0

func NewBeforeOpContext(col *mongo.Collection, condContext *CondContext, opts ...BeforeOpContextOption) *BeforeOpContext

type BeforeOpContextOption added in v0.12.0

type BeforeOpContextOption func(*BeforeOpContext)

type CondContext added in v0.12.0

type CondContext struct {
	Filter       any `opt:"-"`
	Updates      any
	Replacement  any
	MongoOptions any
	ModelHook    any
}

func NewCondContext added in v0.12.0

func NewCondContext(filter any, opts ...CondContextOption) *CondContext

type CondContextOption added in v0.12.0

type CondContextOption func(*CondContext)

func WithModelHook added in v1.4.0

func WithModelHook(modelHook any) CondContextOption

func WithMongoOptions added in v1.3.0

func WithMongoOptions(mongoOptions any) CondContextOption

func WithReplacement added in v0.12.0

func WithReplacement(replacement any) CondContextOption

func WithUpdates added in v0.12.0

func WithUpdates(updates any) CondContextOption

type TestUser added in v1.0.0

type TestUser struct {
	ID           primitive.ObjectID `bson:"_id,omitempty"`
	Name         string             `bson:"name"`
	Age          int64
	UnknownField string    `bson:"-"`
	CreatedAt    time.Time `bson:"created_at"`
	UpdatedAt    time.Time `bson:"updated_at"`
}

func (*TestUser) DefaultCreatedAt added in v1.0.0

func (m *TestUser) DefaultCreatedAt() time.Time

func (*TestUser) DefaultId added in v1.0.0

func (m *TestUser) DefaultId() primitive.ObjectID

func (*TestUser) DefaultUpdatedAt added in v1.0.0

func (m *TestUser) DefaultUpdatedAt() time.Time

type TestUser2 added in v1.3.0

type TestUser2 struct {
	ID           string `bson:"_id,omitempty"`
	Name         string `bson:"name"`
	Age          int64
	UnknownField string    `bson:"-"`
	CreatedAt    time.Time `bson:"createdAt"`
	UpdatedAt    time.Time `bson:"updatedAt"`
}

func (*TestUser2) CustomCreatedAt added in v1.3.0

func (m *TestUser2) CustomCreatedAt() (string, any)

func (*TestUser2) CustomID added in v1.3.0

func (m *TestUser2) CustomID() (string, any)

func (*TestUser2) CustomUpdatedAt added in v1.3.0

func (m *TestUser2) CustomUpdatedAt() (string, any)

type Updater

type Updater[T any] struct {
	// contains filtered or unexported fields
}

func NewUpdater

func NewUpdater[T any](collection *mongo.Collection) *Updater[T]

func (*Updater[T]) Filter

func (u *Updater[T]) Filter(filter any) *Updater[T]

Filter is used to set the filter of the query

func (*Updater[T]) ModelHook added in v1.4.0

func (u *Updater[T]) ModelHook(modelHook any) *Updater[T]

func (*Updater[T]) RegisterAfterHooks added in v0.12.0

func (u *Updater[T]) RegisterAfterHooks(hooks ...afterHookFn) *Updater[T]

func (*Updater[T]) RegisterBeforeHooks added in v0.12.0

func (u *Updater[T]) RegisterBeforeHooks(hooks ...beforeHookFn) *Updater[T]

func (*Updater[T]) Replacement added in v0.11.0

func (u *Updater[T]) Replacement(replacement any) *Updater[T]

func (*Updater[T]) UpdateMany

func (u *Updater[T]) UpdateMany(ctx context.Context, opts ...*options.UpdateOptions) (*mongo.UpdateResult, error)

func (*Updater[T]) UpdateOne

func (u *Updater[T]) UpdateOne(ctx context.Context, opts ...*options.UpdateOptions) (*mongo.UpdateResult, error)

func (*Updater[T]) Updates

func (u *Updater[T]) Updates(updates any) *Updater[T]

Updates is used to set the updates of the update

func (*Updater[T]) Upsert added in v0.11.0

func (u *Updater[T]) Upsert(ctx context.Context, opts ...*options.UpdateOptions) (*mongo.UpdateResult, error)

type User added in v1.0.0

type User struct {
	Id           string `bson:"_id"`
	Name         string `bson:"name"`
	Age          int64
	UnknownField string `bson:"-"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL