Documentation ¶
Index ¶
- Variables
- func Decode(context *qor.Context, result interface{}, res Resourcer) error
- func DecodeToResource(res Resourcer, result interface{}, metaValues *MetaValues, ...) *processor
- type ConfigureMetaBeforeInitializeInterface
- type ConfigureMetaInterface
- type ConfigureResourceBeforeInitializeInterface
- type ConfigureResourceInterface
- type Meta
- func (meta Meta) GetBaseResource() Resourcer
- func (meta Meta) GetFieldName() string
- func (meta *Meta) GetFormattedValuer() func(interface{}, *qor.Context) interface{}
- func (meta Meta) GetName() string
- func (meta Meta) GetSetter() func(resource interface{}, metaValue *MetaValue, context *qor.Context)
- func (meta Meta) GetValuer() func(interface{}, *qor.Context) interface{}
- func (meta Meta) HasPermission(mode roles.PermissionMode, context *qor.Context) bool
- func (meta *Meta) Initialize() error
- func (meta *Meta) PreInitialize() error
- func (meta *Meta) SetFieldName(name string)
- func (meta *Meta) SetFormattedValuer(fc func(interface{}, *qor.Context) interface{})
- func (meta *Meta) SetPermission(permission *roles.Permission)
- func (meta *Meta) SetSetter(fc func(resource interface{}, metaValue *MetaValue, context *qor.Context))
- func (meta *Meta) SetValuer(fc func(interface{}, *qor.Context) interface{})
- type MetaValue
- type MetaValues
- type Metaor
- type Resource
- func (res *Resource) AddProcessor(fc func(interface{}, *MetaValues, *qor.Context) error)
- func (res *Resource) AddValidator(fc func(interface{}, *MetaValues, *qor.Context) error)
- func (res *Resource) CallDelete(result interface{}, context *qor.Context) error
- func (res *Resource) CallFindMany(result interface{}, context *qor.Context) error
- func (res *Resource) CallFindOne(result interface{}, metaValues *MetaValues, context *qor.Context) error
- func (res *Resource) CallSave(result interface{}, context *qor.Context) error
- func (res *Resource) GetMetas([]string) []Metaor
- func (res *Resource) GetResource() *Resource
- func (res *Resource) HasPermission(mode roles.PermissionMode, context *qor.Context) bool
- func (res *Resource) NewSlice() interface{}
- func (res *Resource) NewStruct() interface{}
- func (res *Resource) PrimaryDBName() (name string)
- func (res *Resource) PrimaryField() *gorm.Field
- func (res *Resource) PrimaryFieldName() (name string)
- type Resourcer
Constants ¶
This section is empty.
Variables ¶
var ( ErrProcessorRecordNotFound = errors.New("resource: record not found") ErrProcessorSkipLeft = errors.New("resource: skip left") )
Functions ¶
func DecodeToResource ¶
func DecodeToResource(res Resourcer, result interface{}, metaValues *MetaValues, context *qor.Context) *processor
Types ¶
type ConfigureMetaBeforeInitializeInterface ¶
type ConfigureMetaBeforeInitializeInterface interface {
ConfigureQorMetaBeforeInitialize(Metaor)
}
ConfigureMetaorBeforeInitializeInterface if a struct's field's type implemented this interface, it will be called when initializing a meta
type ConfigureMetaInterface ¶
type ConfigureMetaInterface interface {
ConfigureQorMeta(Metaor)
}
ConfigureMetaorInterface if a struct's field's type implemented this interface, it will be called after configed
type ConfigureResourceBeforeInitializeInterface ¶
type ConfigureResourceBeforeInitializeInterface interface {
ConfigureQorResourceBeforeInitialize(Resourcer)
}
ConfigureResourcerBeforeInitializeInterface if a struct implemented this interface, it will be called before everything when create a resource with the struct
type ConfigureResourceInterface ¶
type ConfigureResourceInterface interface {
ConfigureQorResource(Resourcer)
}
ConfigureResourcerInterface if a struct implemented this interface, it will be called after configured by user
type Meta ¶
type Meta struct { Name string FieldName string Setter func(resource interface{}, metaValue *MetaValue, context *qor.Context) Valuer func(interface{}, *qor.Context) interface{} FormattedValuer func(interface{}, *qor.Context) interface{} Permission *roles.Permission Resource Resourcer FieldStruct *gorm.StructField }
func (Meta) GetBaseResource ¶
func (Meta) GetFieldName ¶
func (*Meta) GetFormattedValuer ¶
func (Meta) HasPermission ¶
func (*Meta) Initialize ¶
func (*Meta) PreInitialize ¶
func (*Meta) SetFieldName ¶
func (*Meta) SetFormattedValuer ¶
func (*Meta) SetPermission ¶
func (meta *Meta) SetPermission(permission *roles.Permission)
type MetaValue ¶
type MetaValue struct { Name string Value interface{} MetaValues *MetaValues Meta Metaor // contains filtered or unexported fields }
type MetaValues ¶
type MetaValues struct {
Values []*MetaValue
}
func ConvertFormToMetaValues ¶
func ConvertJSONToMetaValues ¶
func ConvertJSONToMetaValues(reader io.Reader, metaors []Metaor) (*MetaValues, error)
func (MetaValues) Get ¶
func (mvs MetaValues) Get(name string) *MetaValue
type Metaor ¶
type Metaor interface { GetName() string GetFieldName() string GetSetter() func(resource interface{}, metaValue *MetaValue, context *qor.Context) GetFormattedValuer() func(interface{}, *qor.Context) interface{} GetValuer() func(interface{}, *qor.Context) interface{} GetResource() Resourcer GetMetas() []Metaor HasPermission(roles.PermissionMode, *qor.Context) bool }
type Resource ¶
type Resource struct { Name string Value interface{} FindManyHandler func(interface{}, *qor.Context) error FindOneHandler func(interface{}, *MetaValues, *qor.Context) error SaveHandler func(interface{}, *qor.Context) error DeleteHandler func(interface{}, *qor.Context) error Permission *roles.Permission // contains filtered or unexported fields }
func (*Resource) AddProcessor ¶
func (res *Resource) AddProcessor(fc func(interface{}, *MetaValues, *qor.Context) error)
func (*Resource) AddValidator ¶
func (res *Resource) AddValidator(fc func(interface{}, *MetaValues, *qor.Context) error)
func (*Resource) CallDelete ¶
func (*Resource) CallFindMany ¶
func (*Resource) CallFindOne ¶
func (res *Resource) CallFindOne(result interface{}, metaValues *MetaValues, context *qor.Context) error
func (*Resource) GetResource ¶
func (*Resource) HasPermission ¶
func (*Resource) PrimaryDBName ¶
PrimaryDBName return db column name of the resource's primary field
func (*Resource) PrimaryField ¶
PrimaryField return gorm's primary field
func (*Resource) PrimaryFieldName ¶
PrimaryFieldName return struct column name of the resource's primary field
type Resourcer ¶
type Resourcer interface { GetResource() *Resource GetMetas([]string) []Metaor CallFindMany(interface{}, *qor.Context) error CallFindOne(interface{}, *MetaValues, *qor.Context) error CallSave(interface{}, *qor.Context) error CallDelete(interface{}, *qor.Context) error NewSlice() interface{} NewStruct() interface{} }