You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
// ==========================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// ==========================================================================
package internal
import ( "context"
"github.com/gogf/gf/v2/database/gdb" "github.com/gogf/gf/v2/frame/g" )
// ArticleDao is the data access object for the table article.
type ArticleDao struct { table string // table is the underlying table name of the DAO.
group string // group is the database configuration group name of the current DAO.
columns ArticleColumns // columns contains all the column names of Table for convenient usage.
handlers []gdb.ModelHandler // handlers for customized model modification.
}
// ArticleColumns defines and stores column names for the table article.
type ArticleColumns struct { Id string //
UserId string // 用户ID
ArticleTitle string // 文章/视频标题
ArticleContent string // 文章/视频内容
VoteStatus string // 是否发起投票:1发起,0不发起
CreateTime string //
UpdateTime string //
}
// articleColumns holds the columns for the table article.
var articleColumns = ArticleColumns{ Id: "id", UserId: "user_id", ArticleTitle: "article_title", ArticleContent: "article_content", VoteStatus: "vote_status", CreateTime: "create_time", UpdateTime: "update_time", }
// NewArticleDao creates and returns a new DAO object for table data access.
func NewArticleDao(handlers ...gdb.ModelHandler) *ArticleDao { return &ArticleDao{ group: "default", table: "article", columns: articleColumns, handlers: handlers, } }
// DB retrieves and returns the underlying raw database management object of the current DAO.
func (dao *ArticleDao) DB() gdb.DB { return g.DB(dao.group) }
// Table returns the table name of the current DAO.
func (dao *ArticleDao) Table() string { return dao.table }
// Columns returns all column names of the current DAO.
func (dao *ArticleDao) Columns() ArticleColumns { return dao.columns }
// Group returns the database configuration group name of the current DAO.
func (dao *ArticleDao) Group() string { return dao.group }
// Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation.
func (dao *ArticleDao) Ctx(ctx context.Context) *gdb.Model { model := dao.DB().Model(dao.table) for _, handler := range dao.handlers { model = handler(model) } return model.Safe().Ctx(ctx) }
// Transaction wraps the transaction logic using function f.
// It rolls back the transaction and returns the error if function f returns a non-nil error.
// It commits the transaction and returns nil if function f returns nil.
//
// Note: Do not commit or roll back the transaction in function f,
// as it is automatically handled by this function.
func (dao *ArticleDao) Transaction(ctx context.Context, f func(ctx context.Context, tx gdb.TX) error) (err error) { return dao.Ctx(ctx).Transaction(ctx, f) }
|