relationship

package
v0.8.13 Latest Latest
Warning

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

Go to latest
Published: Mar 18, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package relationship 用于处理多对多的数据表关系

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Module

type Module[T1, T2 T] struct {
	// contains filtered or unexported fields
}

func Install

func Install[T1, T2 T](mod *cmfx.Module, tableName string) *Module[T1, T2]

func Load

func Load[T1, T2 T](mod *cmfx.Module, tableName string) *Module[T1, T2]

func (*Module[T1, T2]) Add

func (m *Module[T1, T2]) Add(tx *orm.Tx, v1 T1, v2 T2) error

func (*Module[T1, T2]) CountByV1

func (m *Module[T1, T2]) CountByV1(v1 T1) (int64, error)

func (*Module[T1, T2]) CountByV2

func (m *Module[T1, T2]) CountByV2(v2 T2) (int64, error)

func (*Module[T1, T2]) Delete

func (m *Module[T1, T2]) Delete(tx *orm.Tx, v1 T1, v2 T2) error

func (*Module[T1, T2]) DeleteByV1

func (m *Module[T1, T2]) DeleteByV1(tx *orm.Tx, v1 T1) error

func (*Module[T1, T2]) DeleteByV2

func (m *Module[T1, T2]) DeleteByV2(tx *orm.Tx, v2 T2) error

func (*Module[T1, T2]) LeftJoin

func (m *Module[T1, T2]) LeftJoin(sql *sqlbuilder.SelectStmt, alias, on string)

LeftJoin LEFT JOIN 至 sql

alias 为当前的 relationshipPO 表指定别名,该别名可能在 on 参数中可能会用到;

func (*Module[T1, T2]) ListV1

func (m *Module[T1, T2]) ListV1(v2 T2) ([]T1, error)

ListV1 列出所有与 v2 关联的 v1 列表

func (*Module[T1, T2]) ListV2

func (m *Module[T1, T2]) ListV2(v1 T1) ([]T2, error)

ListV2 列出所有与 v1 关联的 v2 列表

type T

type T interface {
	~string | ~int | ~int64
}

T 限制了可用的字段类型

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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