func (res *Resource) finder(result interface{}, metaValues *resource.MetaValues, context *qor.Context) error { var primaryKey string if metaValues == nil { primaryKey = context.ResourceID } else if id := metaValues.Get(res.PrimaryFieldName()); id != nil { primaryKey = utils.ToString(id.Value) } if primaryKey != "" { if metaValues != nil { if destroy := metaValues.Get("_destroy"); destroy != nil { if fmt.Sprintf("%v", destroy.Value) != "0" { context.GetDB().Delete(result, primaryKey) return resource.ErrProcessorSkipLeft } } } return context.GetDB().First(result, primaryKey).Error } return nil }