common

package
v0.0.0-...-2b9086d Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2019 License: MIT Imports: 10 Imported by: 3

Documentation

Overview

Common tools and helper functions

Index

Constants

View Source
const NBRandomPassword = "A String Very Very Very Niubilty!!@##$!@#4"
View Source
const NBSecretPassword = "A String Very Very Very Strong!!@##$!@#$"

Keep this two config private, it should not expose to open source

Variables

View Source
var DB *gorm.DB

Functions

func Bind

func Bind(c *gin.Context, obj interface{}) error

Changed the c.MustBindWith() -> c.ShouldBindWith(). I don't want to auto return 400 when error happened. origin function is here: https://github.com/gin-gonic/gin/blob/master/context.go

func GenToken

func GenToken(id uint) string

A Util function to generate jwt_token which can be used in the request header

func Init

func Init() *gorm.DB

Opening a database and save the reference to `Database` struct.

func InitDB

func InitDB()

func RandString

func RandString(n int) string

A helper function to generate random string

func TestDBFree

func TestDBFree(test_db *gorm.DB) error

Delete the database after running testing cases.

func TestDBInit

func TestDBInit() *gorm.DB

This function will create a temporarily database for running testing cases

Types

type CommonError

type CommonError struct {
	Errors map[string]interface{} `json:"errors"`
}

My own Error type that will help return my customized Error info

{"database": {"hello":"no such table", error: "not_exists"}}

func NewError

func NewError(key string, err error) CommonError

Warp the error info in a object

func NewValidatorError

func NewValidatorError(err error) CommonError

To handle the error returned by c.Bind in gin framework https://github.com/go-playground/validator/blob/v9/_examples/translations/main.go

type DBType

type DBType struct {
	*gorm.DB
}

func GetDB

func GetDB() *DBType

Using this function to get a connection, you can create your connection pool here.

func (*DBType) InitDB

func (self *DBType) InitDB() *DBType

type Database

type Database struct {
	*gorm.DB
}

Jump to

Keyboard shortcuts

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