Documentation
¶
Index ¶
- type CasbinRule
- type Effect
- type Permission
- type Role
- func (r *Role) CreateAfter(*types.ModelContext) error
- func (r *Role) CreateBefore(*types.ModelContext) error
- func (r *Role) DeleteAfter(ctx *types.ModelContext) error
- func (r *Role) DeleteBefore(ctx *types.ModelContext) error
- func (r *Role) MarshalLogObject(enc zapcore.ObjectEncoder) error
- func (r *Role) UpdateBefore(ctx *types.ModelContext) error
- type RolePermission
- func (r *RolePermission) CreateAfter(*types.ModelContext) error
- func (r *RolePermission) CreateBefore(*types.ModelContext) error
- func (r *RolePermission) DeleteAfter(ctx *types.ModelContext) error
- func (r *RolePermission) DeleteBefore(ctx *types.ModelContext) error
- func (r *RolePermission) MarshalLogObject(enc zapcore.ObjectEncoder) error
- type UserRole
- func (r *UserRole) CreateAfter(ctx *types.ModelContext) error
- func (r *UserRole) CreateBefore(ctx *types.ModelContext) error
- func (r *UserRole) DeleteAfter(ctx *types.ModelContext) error
- func (r *UserRole) DeleteBefore(ctx *types.ModelContext) error
- func (r *UserRole) MarshalLogObject(enc zapcore.ObjectEncoder) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CasbinRule ¶
type CasbinRule struct {
// ID uint64 `json:"id" gorm:"primaryKey"`
ID uint64 `json:"id" gorm:"primaryKey;autoIncrement:true"`
Ptype string `json:"ptype" gorm:"size:100" schema:"ptype"`
V0 string `json:"v0,omitempty" gorm:"size:100" schema:"v0"`
V1 string `json:"v1,omitempty" gorm:"size:100" schema:"v1"`
V2 string `json:"v2,omitempty" gorm:"size:100" schema:"v2"`
V3 string `json:"v3,omitempty" gorm:"size:100" schema:"v3"`
V4 string `json:"v4,omitempty" gorm:"size:100" schema:"v4"`
V5 string `json:"v5,omitempty" gorm:"size:100" schema:"v5"`
User string `json:"user,omitempty" schema:"user"` // 只是用来记录一些信息, V0 为 user_id
Role string `json:"role,omitempty" schema:"role"` // 只是用来记录一些信息, V1 为 role name
model.Base
}
CasbinRule RBAC 包中会通过 gormadapter.NewAdapterByDBWithCustomTable(database.DB, &model.CasbinRule{}) 或 gormadapter.NewAdapterByDB(database.DB) 来创建; NOTE: ID 类型必须是整型
func (CasbinRule) GetTableName ¶
func (cr CasbinRule) GetTableName() string
GetTableName 用来指定 CasbinRule 在数据库中的表名为 casbin_rule. gormadapter.NewAdapterByDBWithCustomTable 创建的表名总是 casbin_rule, 但是 gorm 默认创建的表名为 casbin_rules, 为了统一,直接就用 casbin_rule 了.
func (*CasbinRule) SetID ¶
func (cr *CasbinRule) SetID(id ...string)
SetID 为一个空的函数,不允许自动设置ID, 因为 gormadapter.NewAdapterByDBWithCustomTable 创建的表的ID总是为 autoIncrement. 如果设置了自定义ID则会报错.
type Permission ¶
type Permission struct {
Resource string `json:"resource,omitempty" schema:"resource"`
Action string `json:"action,omitempty" schema:"action"`
model.Base
}
func (*Permission) CreateBefore ¶
func (p *Permission) CreateBefore(*types.ModelContext) error
func (*Permission) MarshalLogObject ¶
func (p *Permission) MarshalLogObject(enc zapcore.ObjectEncoder) error
type Role ¶
func (*Role) CreateAfter ¶
func (r *Role) CreateAfter(*types.ModelContext) error
func (*Role) CreateBefore ¶
func (r *Role) CreateBefore(*types.ModelContext) error
func (*Role) DeleteAfter ¶
func (r *Role) DeleteAfter(ctx *types.ModelContext) error
func (*Role) DeleteBefore ¶
func (r *Role) DeleteBefore(ctx *types.ModelContext) error
func (*Role) MarshalLogObject ¶
func (r *Role) MarshalLogObject(enc zapcore.ObjectEncoder) error
func (*Role) UpdateBefore ¶
func (r *Role) UpdateBefore(ctx *types.ModelContext) error
type RolePermission ¶
type RolePermission struct {
Role string `json:"role" schema:"role"`
Resource string `json:"resource" schema:"resource"`
Action string `json:"action" schema:"action"`
Effect Effect `json:"effect" schema:"effect"`
model.Base
}
RolePermission is a permission for a role TODO: remove RoleId and only keep Role(role name).
func (*RolePermission) CreateAfter ¶
func (r *RolePermission) CreateAfter(*types.ModelContext) error
func (*RolePermission) CreateBefore ¶
func (r *RolePermission) CreateBefore(*types.ModelContext) error
func (*RolePermission) DeleteAfter ¶
func (r *RolePermission) DeleteAfter(ctx *types.ModelContext) error
func (*RolePermission) DeleteBefore ¶
func (r *RolePermission) DeleteBefore(ctx *types.ModelContext) error
func (*RolePermission) MarshalLogObject ¶
func (r *RolePermission) MarshalLogObject(enc zapcore.ObjectEncoder) error
type UserRole ¶
type UserRole struct {
UserID string `json:"user_id,omitempty" schema:"user_id"`
RoleID string `json:"role_id,omitempty" schema:"role_id"`
User string `json:"user,omitempty" schema:"user"` // 用户名,只是为了方便查询
Role string `json:"role,omitempty" schema:"role"` // 角色名,只是为了方便查询
model.Base
}
func (*UserRole) CreateAfter ¶
func (r *UserRole) CreateAfter(ctx *types.ModelContext) error
func (*UserRole) CreateBefore ¶
func (r *UserRole) CreateBefore(ctx *types.ModelContext) error
func (*UserRole) DeleteAfter ¶
func (r *UserRole) DeleteAfter(ctx *types.ModelContext) error
func (*UserRole) DeleteBefore ¶
func (r *UserRole) DeleteBefore(ctx *types.ModelContext) error
func (*UserRole) MarshalLogObject ¶
func (r *UserRole) MarshalLogObject(enc zapcore.ObjectEncoder) error
Click to show internal directories.
Click to hide internal directories.