Work on ensuring data consistency even for yet unknown fields
Some checks failed
/ docker (push) Has been cancelled
Some checks failed
/ docker (push) Has been cancelled
This commit is contained in:
parent
7e10627618
commit
bf0aaaca8f
12 changed files with 458 additions and 5 deletions
|
@ -31,6 +31,7 @@ func newActivity(db *gorm.DB, opts ...gen.DOOption) activity {
|
|||
_activity.Type = field.NewString(tableName, "type")
|
||||
_activity.ObjectId = field.NewString(tableName, "object_id")
|
||||
_activity.ObjectType = field.NewUint32(tableName, "object_type")
|
||||
_activity.RawData = field.NewBytes(tableName, "raw_data")
|
||||
|
||||
_activity.fillFieldMap()
|
||||
|
||||
|
@ -45,6 +46,7 @@ type activity struct {
|
|||
Type field.String
|
||||
ObjectId field.String
|
||||
ObjectType field.Uint32
|
||||
RawData field.Bytes
|
||||
|
||||
fieldMap map[string]field.Expr
|
||||
}
|
||||
|
@ -65,6 +67,7 @@ func (a *activity) updateTableName(table string) *activity {
|
|||
a.Type = field.NewString(table, "type")
|
||||
a.ObjectId = field.NewString(table, "object_id")
|
||||
a.ObjectType = field.NewUint32(table, "object_type")
|
||||
a.RawData = field.NewBytes(table, "raw_data")
|
||||
|
||||
a.fillFieldMap()
|
||||
|
||||
|
@ -81,11 +84,12 @@ func (a *activity) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
|
|||
}
|
||||
|
||||
func (a *activity) fillFieldMap() {
|
||||
a.fieldMap = make(map[string]field.Expr, 4)
|
||||
a.fieldMap = make(map[string]field.Expr, 5)
|
||||
a.fieldMap["id"] = a.Id
|
||||
a.fieldMap["type"] = a.Type
|
||||
a.fieldMap["object_id"] = a.ObjectId
|
||||
a.fieldMap["object_type"] = a.ObjectType
|
||||
a.fieldMap["raw_data"] = a.RawData
|
||||
}
|
||||
|
||||
func (a activity) clone(db *gorm.DB) activity {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue