xtag

package
v0.3.31 Latest Latest
Warning

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

Go to latest
Published: Aug 1, 2024 License: BSD-3-Clause-Clear Imports: 5 Imported by: 0

Documentation

Overview

标签模块

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Create added in v0.0.23

func Create(c *Tag) error

创建标签

c	标签结构内容
func IsLink(target_id, target_name, tag_id uint) bool

检测连接 将连接创建到普通tag标签上,而不是alias别名上

target_id	对象表名
target_name	对象名称
tag_id		标签ID
func Link(target_id, target_name, tag_id uint) error

创建连接 将连接创建到普通tag标签上,而不是alias别名上

target_id	对象表名
target_name	对象名称
tag_id		标签ID

func Regedit

func Regedit(c *Config)

入口配置

func Remove added in v0.0.23

func Remove(id uint) error

删除TAG 此操作会连带着删除taglink的数据和tag alias数据,使用时请多注意使用情况,另,建议每隔一段时间执行一次 `OPTIMIZE TABLE xxxx`,用于回收删除后的空间 如果删除的标签为别名标签,则此操作会将该别名标签、别名标签的别名给删除

id	标签ID

func SetDB added in v0.3.20

func SetDB(db *gorm.DB)

设置数据库连接

db	数据库连接
func Unlink(target_id, target_name, tag_id uint) error

删除连接信息

target_id	对象表名
target_name	对象名称
tag_id		标签ID

Types

type Config

type Config struct {
	DB      *gorm.DB
	TagName string // 标签表表名
	TagLink string // 标签连接表表名
}

type Tag

type Tag struct {
	Id        uint   `gorm:"column:id;primaryKey;not null;autoIncrement" json:"id" form:"id"`
	Name      string `gorm:"column:name;type:VARCHAR(200);comment:标签名称" json:"name" form:"name"`               // 标签名
	AliasId   uint   `gorm:"column:alias_id;comment:标签别名源ID 0-普通标签 xxx-标签别名" json:"alias_id" form:"alias_id"`  // 标签所属主签ID 0-普通标签
	Uid       uint   `gorm:"column:uid;comment:创建人ID 0-系统标签" json:"uid" form:"uid"`                            // 创建人ID 0-系统标签
	CreatedAt string `gorm:"column:created_at;type:DATETIME;comment:添加时间" json:"created_at" form:"created_at"` //添加时间
	UpdatedAt string `gorm:"column:updated_at;type:DATETIME;comment:处理时间" json:"updated_at" form:"updated_at"` //处理时间
}

标签表

func Info added in v0.0.23

func Info(tag_id uint) (*Tag, error)

获取标签详情信息

tag_id	标签ID

func (*Tag) TableName

func (c *Tag) TableName() string

获取表名

type TagLink struct {
	Id         uint64 `gorm:"column:id;primaryKey;type:BIGINT UNSIGNED;not null;autoIncrement" json:"id" form:"id"`
	TagId      uint   `gorm:"column:tag_id;comment:标签ID;index:tag_id" json:"tag_id" form:"tag_id"`                         //标签编号
	TargetId   uint   `gorm:"column:target_id;comment:连接对象ID;index:target_id" json:"target_id" form:"target_id"`           //链接对象表主键编号
	TargetName uint   `gorm:"column:target_name;comment:连接对象类型ID;index:target_name" json:"target_name" form:"target_name"` //链接对象表名称,KeyValue值
	CreatedAt  string `gorm:"column:created_at;type:DATETIME;comment:添加时间" json:"created_at" form:"created_at"`            //添加时间
}

标签关联表

func (*TagLink) TableName

func (c *TagLink) TableName() string

获取表名

Jump to

Keyboard shortcuts

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