model

package
v0.0.0-...-618fe63 Latest Latest
Warning

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

Go to latest
Published: Feb 26, 2021 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// User const type
	User user = ""
)

Variables

View Source
var (
	// JWT variable instance of intef
	JWT intef = &wt{}
)

Functions

This section is empty.

Types

type DBLogger

type DBLogger struct {
	SlowThreshold         time.Duration
	SourceField           string
	SkipErrRecordNotFound bool
}

DBLogger struct

func NewDBLogger

func NewDBLogger() *DBLogger

NewDBLogger func

func (*DBLogger) Error

func (l *DBLogger) Error(ctx context.Context, s string, args ...interface{})

Error func

func (*DBLogger) Info

func (l *DBLogger) Info(ctx context.Context, s string, args ...interface{})

Info func

func (*DBLogger) LogMode

LogMode func

func (*DBLogger) Trace

func (l *DBLogger) Trace(ctx context.Context, begin time.Time, fc func() (string, int64), err error)

Trace func

func (*DBLogger) Warn

func (l *DBLogger) Warn(ctx context.Context, s string, args ...interface{})

Warn func

type FileInfo

type FileInfo struct {
	ID   string
	Path string
	Type string
}

FileInfo struct

type FileStore

type FileStore struct {
	// contains filtered or unexported fields
}

FileStore struct

func NewFileStore

func NewFileStore(folder string) *FileStore

NewFileStore struct

func (*FileStore) Store

func (f *FileStore) Store(folder string, fileType string, file bytes.Buffer) (*FileInfo, error)

Store meth for store a new file into blog service

type Media

type Media struct {
	ID          uint64    `json:"-" gorm:"primaryKey"`
	URL         string    `validate:"required" json:"url" gorm:"unique;not null;type:varchar(500);"`
	Type        string    `validate:"required" json:"type" gorm:"type:varchar(50);"`
	Title       *string   `validate:"required" json:"title" gorm:"type:varchar(255);"`
	Description *string   `validate:"required" json:"description"`
	Post        []*Post   `json:"posts" gorm:"many2many:posts_medias;association_foreignkey:ID;foreignkey:ID"`
	CreatedAt   time.Time `json:"-"`
	UpdatedAt   time.Time `json:"-"`
}

Media struct

type Param

type Param struct {
	ID uint64 `json:"-" gorm:"primaryKey"`
	Query
	CreatedAt time.Time `json:"-"`
	UpdatedAt time.Time `json:"-"`
}

Param struct

type Post

type Post struct {
	ID          uint64     `json:"-" gorm:"primaryKey"`
	UserID      uint64     `validate:"required" json:"user_id"`
	Title       string     `validate:"required" json:"title" gorm:"unique;not null;type:varchar(255);"`
	Slug        string     `validate:"required" json:"slug" gorm:"uniqueIndex;not null;type:varchar(255);"`
	Description string     `validate:"required" json:"description" gorm:"type:text"`
	Text        string     `validate:"required" json:"text" gorm:"type:text"`
	Params      []*Param   `validate:"required" json:"params" gorm:"many2many:params_posts;association_foreignkey:ID;foreignkey:ID"`
	Media       []*Media   `json:"medias" gorm:"many2many:posts_medias;association_foreignkey:ID;foreignkey:ID"`
	Tags        []*Tag     `validate:"required" json:"tags" gorm:"many2many:posts_tags;association_foreignkey:ID;foreignkey:ID"`
	Status      StatusPost `` /* 161-byte string literal not displayed */
	Rate        uint8      `json:"rate" gorm:"gte:1;lte:5;default:1"`
	PublishedAT time.Time  `json:"-"`
	CreatedAt   time.Time  `json:"-"`
	UpdatedAt   time.Time  `json:"-"`
}

Post struct

type Query

type Query struct {
	Name  string      `validate:"required" json:"name" gorm:"not null;type:varchar(80);"`
	Value interface{} `validate:"required" json:"value" gorm:"not null;type:varchar(120);"`
}

Query struct

type StatusPost

type StatusPost string

StatusPost string for posts status

const (
	Pending   StatusPost = "pending"
	Published StatusPost = "published"
	Deleted   StatusPost = "deleted"
)

const for posts status types

func ScanStatus

func ScanStatus(value string) StatusPost

ScanStatus func

type Tag

type Tag struct {
	ID        uint64    `json:"-" gorm:"primaryKey"`
	Posts     []*Post   `json:"-" gorm:"many2many:posts_tags;"`
	Name      string    `validate:"required" json:"name" gorm:"uniqueIndex;type:varchar(40);"`
	CreatedAt time.Time `json:"-"`
	UpdatedAt time.Time `json:"-"`
}

Tag struct

Jump to

Keyboard shortcuts

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