filedata

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: May 12, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MaxFileSize = 4 * 1024 * 1024 // 4MB
	AvatarPath  = "avatars"
)

在 supportedImageTypes 映射后添加新的常量

Variables

This section is empty.

Functions

func CheckImageType

func CheckImageType(filename string) (string, error)

CheckImageType 检查文件类型是否支持,返回对应的 Content-Type

func CountDailyUploads added in v0.1.1

func CountDailyUploads(userId uint64) int64

CountDailyUploads 统计用户当日上传次数

func CountUserUploadsInTimeRange added in v0.0.6

func CountUserUploadsInTimeRange(userId uint64, startTime, endTime time.Time) int64

CountUserUploadsInTimeRange 统计用户在指定时间范围内的上传次数

func CountUserUploadsToday added in v0.0.6

func CountUserUploadsToday(userId uint64) int64

CountUserUploadsToday 统计用户今日上传次数

func CreateOrSave

func CreateOrSave(entity *Entity) int64

Types

type Entity

type Entity struct {
	Id        uint64    `gorm:"primaryKey;column:id;autoIncrement;not null;" json:"id"`                      // 主键
	Name      string    `gorm:"column:name;uniqueIndex;type:varchar(256);not null;" json:"name"`             // 添加唯一索引
	Type      string    `gorm:"column:assert_type;index;type:varchar(64);not null;" json:"type"`             //
	Data      []byte    `gorm:"column:content;type:BLOB;" json:"data"`                                       // 内容
	UserId    uint64    `gorm:"column:user_id;index;type:bigint unsigned;not null;default:0;" json:"userId"` //
	CreatedAt time.Time `gorm:"column:created_at;index;autoCreateTime;<-:create;" json:"createdAt"`          //
	UpdatedAt time.Time `gorm:"column:updated_at;autoUpdateTime;" json:"updatedAt"`
}

func Get

func Get(id any) (entity Entity)

func GetByName

func GetByName(name string) (entity Entity)

func GetFile

func GetFile(id uint64) (*Entity, error)

func GetFileByName

func GetFileByName(name string) (*Entity, error)

func SaveAvatar

func SaveAvatar(userId uint64, fileData []byte, filename string) (*Entity, error)

SaveAvatar 现在可以基于通用方法实现

func SaveFile

func SaveFile(userId uint64, name string, fileType string, data []byte) (*Entity, error)

func SaveFileFromUpload

func SaveFileFromUpload(userId uint64, fileData []byte, filename string, customPath string) (*Entity, error)

func (*Entity) GetAccessPath added in v0.0.6

func (itself *Entity) GetAccessPath() string

func (*Entity) TableName

func (itself *Entity) TableName() string

Jump to

Keyboard shortcuts

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