Documentation ¶
Index ¶
- Constants
- Variables
- func AmountGreaterThan1000(db *gorm.DB) *gorm.DB
- func Available(db Database) bool
- func Close(db Database) error
- func DeleteAllSince(table string, date time.Time)
- func StartMaintenceRoutine()
- type By
- type Database
- type Db
- func (it *Db) AddError(err error) error
- func (it *Db) AddForeignKey(field string, dest string, onDelete string, onUpdate string) Database
- func (it *Db) AddIndex(indexName string, columns ...string) Database
- func (it *Db) AddUniqueIndex(indexName string, columns ...string) Database
- func (it *Db) Assign(attrs ...interface{}) Database
- func (it *Db) Association(column string) *gorm.Association
- func (it *Db) Attrs(attrs ...interface{}) Database
- func (it *Db) AutoMigrate(values ...interface{}) Database
- func (it *Db) Begin() Database
- func (it *Db) Between(t1 time.Time, t2 time.Time) Database
- func (it *Db) Callback() *gorm.Callback
- func (it *Db) Close() error
- func (it *Db) Commit() Database
- func (it *Db) CommonDB() gorm.SQLCommon
- func (it *Db) Count(value interface{}) Database
- func (it *Db) Create(value interface{}) Database
- func (it *Db) CreateTable(values ...interface{}) Database
- func (it *Db) DB() *sql.DB
- func (it *Db) DbType() string
- func (it *Db) Debug() Database
- func (it *Db) Delete(value interface{}, where ...interface{}) Database
- func (it *Db) DropColumn(column string) Database
- func (it *Db) DropTable(values ...interface{}) Database
- func (it *Db) DropTableIfExists(values ...interface{}) Database
- func (it *Db) Error() error
- func (it *Db) Exec(sql string, values ...interface{}) Database
- func (it *Db) Find(out interface{}, where ...interface{}) Database
- func (it *Db) First(out interface{}, where ...interface{}) Database
- func (it *Db) FirstOrCreate(out interface{}, where ...interface{}) Database
- func (it *Db) FirstOrInit(out interface{}, where ...interface{}) Database
- func (it *Db) FormatTime(t time.Time) string
- func (it *Db) Get(name string) (interface{}, bool)
- func (it *Db) GetErrors() (errors []error)
- func (it *Db) Group(query string) Database
- func (it *Db) HasTable(value interface{}) bool
- func (it *Db) Having(query string, values ...interface{}) Database
- func (it *Db) InstantSet(name string, value interface{}) Database
- func (it *Db) Joins(query string, args ...interface{}) Database
- func (it *Db) Last(out interface{}, where ...interface{}) Database
- func (it *Db) Limit(value int) Database
- func (it *Db) LogMode(enable bool) Database
- func (it *Db) Model(value interface{}) Database
- func (it *Db) ModifyColumn(column string, typ string) Database
- func (it *Db) MultipleSelects(args ...string) Database
- func (it *Db) New() Database
- func (it *Db) NewRecord(value interface{}) bool
- func (it *Db) NewScope(value interface{}) *gorm.Scope
- func (it *Db) Not(query interface{}, args ...interface{}) Database
- func (it *Db) Offset(value int) Database
- func (it *Db) Omit(columns ...string) Database
- func (it *Db) Or(query interface{}, args ...interface{}) Database
- func (it *Db) Order(value string, reorder ...bool) Database
- func (it *Db) ParseTime(t string) (time.Time, error)
- func (it *Db) Pluck(column string, value interface{}) Database
- func (it *Db) Preload(column string, conditions ...interface{}) Database
- func (it *Db) Raw(sql string, values ...interface{}) Database
- func (it *Db) RecordNotFound() bool
- func (it *Db) Related(value interface{}, foreignKeys ...string) Database
- func (it *Db) RemoveIndex(indexName string) Database
- func (it *Db) Rollback() Database
- func (it *Db) Row() *sql.Row
- func (it *Db) Rows() (*sql.Rows, error)
- func (it *Db) RowsAffected() int64
- func (it *Db) Save(value interface{}) Database
- func (it *Db) Scan(dest interface{}) Database
- func (it *Db) ScanRows(rows *sql.Rows, result interface{}) error
- func (it *Db) Scopes(funcs ...func(*gorm.DB) *gorm.DB) Database
- func (it *Db) Select(query interface{}, args ...interface{}) Database
- func (it *Db) SelectByTime(increment time.Duration) string
- func (it *Db) Set(name string, value interface{}) Database
- func (it *Db) SetJoinTableHandler(source interface{}, column string, handler gorm.JoinTableHandlerInterface)
- func (it *Db) SetLogger(log gorm.Logger)
- func (it *Db) Since(ago time.Time) Database
- func (it *Db) SingularTable(enable bool)
- func (it *Db) Table(name string) Database
- func (it *Db) Unscoped() Database
- func (it *Db) Update(attrs ...interface{}) Database
- func (it *Db) UpdateColumn(attrs ...interface{}) Database
- func (it *Db) UpdateColumns(values interface{}) Database
- func (it *Db) Updates(values interface{}, ignoreProtectedAttrs ...bool) Database
- func (it *Db) Where(query interface{}, args ...interface{}) Database
- type DbObject
- type GroupBy
- type GroupByer
- type GroupQuery
- type Sampler
- type TimeGroup
- type TimeValue
- type TimeVar
Constants ¶
View Source
const ( TIME_NANO = "2006-01-02T15:04:05Z" TIME = "2006-01-02 15:04:05" CHART_TIME = "2006-01-02T15:04:05.999999-07:00" TIME_DAY = "2006-01-02" )
Variables ¶
View Source
var ( ByCount = By("COUNT(id) as amount") ByAverage = func(column string, multiplier int) By { switch database.DbType() { case "mysql": return By(fmt.Sprintf("CAST(AVG(%s) as UNSIGNED INT) as amount", column)) case "postgres": return By(fmt.Sprintf("cast(AVG(%s) as int) as amount", column)) default: return By(fmt.Sprintf("cast(AVG(%s) as int) as amount", column)) } } )
Functions ¶
func DeleteAllSince ¶
DeleteAllSince will delete a specific table's records based on a time.
func StartMaintenceRoutine ¶
func StartMaintenceRoutine()
Types ¶
type Database ¶
type Database interface { Close() error DB() *sql.DB New() Database NewScope(value interface{}) *gorm.Scope CommonDB() gorm.SQLCommon Callback() *gorm.Callback SetLogger(l gorm.Logger) LogMode(enable bool) Database SingularTable(enable bool) Where(query interface{}, args ...interface{}) Database Or(query interface{}, args ...interface{}) Database Not(query interface{}, args ...interface{}) Database Limit(value int) Database Offset(value int) Database Order(value string, reorder ...bool) Database Select(query interface{}, args ...interface{}) Database Omit(columns ...string) Database Group(query string) Database Having(query string, values ...interface{}) Database Joins(query string, args ...interface{}) Database Scopes(funcs ...func(*gorm.DB) *gorm.DB) Database Unscoped() Database Attrs(attrs ...interface{}) Database Assign(attrs ...interface{}) Database First(out interface{}, where ...interface{}) Database Last(out interface{}, where ...interface{}) Database Find(out interface{}, where ...interface{}) Database Scan(dest interface{}) Database Row() *sql.Row Rows() (*sql.Rows, error) ScanRows(rows *sql.Rows, result interface{}) error Pluck(column string, value interface{}) Database Count(value interface{}) Database Related(value interface{}, foreignKeys ...string) Database FirstOrInit(out interface{}, where ...interface{}) Database FirstOrCreate(out interface{}, where ...interface{}) Database Update(attrs ...interface{}) Database Updates(values interface{}, ignoreProtectedAttrs ...bool) Database UpdateColumn(attrs ...interface{}) Database UpdateColumns(values interface{}) Database Save(value interface{}) Database Create(value interface{}) Database Delete(value interface{}, where ...interface{}) Database Raw(sql string, values ...interface{}) Database Exec(sql string, values ...interface{}) Database Model(value interface{}) Database Table(name string) Database Debug() Database Begin() Database Commit() Database Rollback() Database NewRecord(value interface{}) bool RecordNotFound() bool CreateTable(values ...interface{}) Database DropTable(values ...interface{}) Database DropTableIfExists(values ...interface{}) Database HasTable(value interface{}) bool AutoMigrate(values ...interface{}) Database ModifyColumn(column string, typ string) Database DropColumn(column string) Database AddIndex(indexName string, column ...string) Database AddUniqueIndex(indexName string, column ...string) Database RemoveIndex(indexName string) Database AddForeignKey(field string, dest string, onDelete string, onUpdate string) Database Association(column string) *gorm.Association Preload(column string, conditions ...interface{}) Database Set(name string, value interface{}) Database InstantSet(name string, value interface{}) Database Get(name string) (value interface{}, ok bool) SetJoinTableHandler(source interface{}, column string, handler gorm.JoinTableHandlerInterface) AddError(err error) error GetErrors() (errors []error) // extra Error() error RowsAffected() int64 Since(time.Time) Database Between(time.Time, time.Time) Database SelectByTime(time.Duration) string MultipleSelects(args ...string) Database FormatTime(t time.Time) string ParseTime(t string) (time.Time, error) DbType() string }
Database is an interface which DB implements
func OpenTester ¶
type Db ¶
func (*Db) AddForeignKey ¶
func (*Db) AddUniqueIndex ¶
func (*Db) Association ¶
func (it *Db) Association(column string) *gorm.Association
func (*Db) AutoMigrate ¶
func (*Db) CreateTable ¶
func (*Db) DropColumn ¶
func (*Db) DropTableIfExists ¶
func (*Db) FirstOrCreate ¶
func (*Db) FirstOrInit ¶
func (*Db) InstantSet ¶
func (*Db) MultipleSelects ¶
func (*Db) RecordNotFound ¶
func (*Db) RemoveIndex ¶
func (*Db) RowsAffected ¶
func (*Db) SetJoinTableHandler ¶
func (it *Db) SetJoinTableHandler(source interface{}, column string, handler gorm.JoinTableHandlerInterface)
func (*Db) SingularTable ¶
func (*Db) UpdateColumn ¶
func (*Db) UpdateColumns ¶
type GroupQuery ¶
type GroupQuery struct { Start time.Time End time.Time Group time.Duration Order string Limit int Offset int FillEmpty bool // contains filtered or unexported fields }
func ParseQueries ¶
func ParseQueries(r *http.Request, o isObject) (*GroupQuery, error)
func (GroupQuery) Database ¶
func (b GroupQuery) Database() Database
func (GroupQuery) Find ¶
func (b GroupQuery) Find(data interface{}) error
func (*GroupQuery) GraphData ¶
func (g *GroupQuery) GraphData(by By) ([]*TimeValue, error)
GraphData will return all hits or failures
func (*GroupQuery) ToTimeValue ¶
func (g *GroupQuery) ToTimeValue() (*TimeVar, error)
Click to show internal directories.
Click to hide internal directories.