type Database

type Database interface {
	FindOne(uid string, params DBParams) (Entity, error)
	FindMany(uid string, params DBParams) ([]Entity, error)
	Create(uid string, data Entity, params DBParams) (Entity, error)
	CreateMany(uid string, data []Entity, params DBParams) ([]Entity, error)
	Update(uid string, data Entity, params DBParams) (Entity, error)
	UpdateMany(uid string, data Entity, params DBParams) ([]Entity, error)
	Delete(uid string, params DBParams) (Entity, error)
	DeleteMany(uid string, params DBParams) ([]Entity, error)
}

Database is an interface to interact with the relational database.

A default sqlite3 database is provided.

type DBParams

type DBParams struct {
	Select   []Attribute
	Columns  []Attribute
	Where    []Condition
	Limit    int64
	Offset   int64
	OrderBy  []*Order
	Populate []Attribute
}

DBParams are query conditions.

type DBParamsBuilder

type DBParamsBuilder struct {}

DBParamsBuilder is a builder for DBParams.

func (DBParamsBuilder) Select

func (p DBParamsBuilder) Select(selects ...Attribute) DBParamsBuilder