orm fix for support custom field
Showing
3 changed files
with
6 additions
and
62 deletions
| ... | @@ -97,10 +97,6 @@ func (e *BooleanField) RawValue() interface{} { | ... | @@ -97,10 +97,6 @@ func (e *BooleanField) RawValue() interface{} { |
| 97 | return e.Value() | 97 | return e.Value() |
| 98 | } | 98 | } |
| 99 | 99 | ||
| 100 | func (e *BooleanField) Clean() error { | ||
| 101 | return nil | ||
| 102 | } | ||
| 103 | |||
| 104 | var _ Fielder = new(BooleanField) | 100 | var _ Fielder = new(BooleanField) |
| 105 | 101 | ||
| 106 | // A string field | 102 | // A string field |
| ... | @@ -139,10 +135,6 @@ func (e *CharField) RawValue() interface{} { | ... | @@ -139,10 +135,6 @@ func (e *CharField) RawValue() interface{} { |
| 139 | return e.Value() | 135 | return e.Value() |
| 140 | } | 136 | } |
| 141 | 137 | ||
| 142 | func (e *CharField) Clean() error { | ||
| 143 | return nil | ||
| 144 | } | ||
| 145 | |||
| 146 | var _ Fielder = new(CharField) | 138 | var _ Fielder = new(CharField) |
| 147 | 139 | ||
| 148 | // A date, represented in go by a time.Time instance. | 140 | // A date, represented in go by a time.Time instance. |
| ... | @@ -196,10 +188,6 @@ func (e *DateField) RawValue() interface{} { | ... | @@ -196,10 +188,6 @@ func (e *DateField) RawValue() interface{} { |
| 196 | return e.Value() | 188 | return e.Value() |
| 197 | } | 189 | } |
| 198 | 190 | ||
| 199 | func (e *DateField) Clean() error { | ||
| 200 | return nil | ||
| 201 | } | ||
| 202 | |||
| 203 | var _ Fielder = new(DateField) | 191 | var _ Fielder = new(DateField) |
| 204 | 192 | ||
| 205 | // A date, represented in go by a time.Time instance. | 193 | // A date, represented in go by a time.Time instance. |
| ... | @@ -243,10 +231,6 @@ func (e *DateTimeField) RawValue() interface{} { | ... | @@ -243,10 +231,6 @@ func (e *DateTimeField) RawValue() interface{} { |
| 243 | return e.Value() | 231 | return e.Value() |
| 244 | } | 232 | } |
| 245 | 233 | ||
| 246 | func (e *DateTimeField) Clean() error { | ||
| 247 | return nil | ||
| 248 | } | ||
| 249 | |||
| 250 | var _ Fielder = new(DateTimeField) | 234 | var _ Fielder = new(DateTimeField) |
| 251 | 235 | ||
| 252 | // A floating-point number represented in go by a float32 value. | 236 | // A floating-point number represented in go by a float32 value. |
| ... | @@ -289,10 +273,6 @@ func (e *FloatField) RawValue() interface{} { | ... | @@ -289,10 +273,6 @@ func (e *FloatField) RawValue() interface{} { |
| 289 | return e.Value() | 273 | return e.Value() |
| 290 | } | 274 | } |
| 291 | 275 | ||
| 292 | func (e *FloatField) Clean() error { | ||
| 293 | return nil | ||
| 294 | } | ||
| 295 | |||
| 296 | var _ Fielder = new(FloatField) | 276 | var _ Fielder = new(FloatField) |
| 297 | 277 | ||
| 298 | // -32768 to 32767 | 278 | // -32768 to 32767 |
| ... | @@ -333,10 +313,6 @@ func (e *SmallIntegerField) RawValue() interface{} { | ... | @@ -333,10 +313,6 @@ func (e *SmallIntegerField) RawValue() interface{} { |
| 333 | return e.Value() | 313 | return e.Value() |
| 334 | } | 314 | } |
| 335 | 315 | ||
| 336 | func (e *SmallIntegerField) Clean() error { | ||
| 337 | return nil | ||
| 338 | } | ||
| 339 | |||
| 340 | var _ Fielder = new(SmallIntegerField) | 316 | var _ Fielder = new(SmallIntegerField) |
| 341 | 317 | ||
| 342 | // -2147483648 to 2147483647 | 318 | // -2147483648 to 2147483647 |
| ... | @@ -377,10 +353,6 @@ func (e *IntegerField) RawValue() interface{} { | ... | @@ -377,10 +353,6 @@ func (e *IntegerField) RawValue() interface{} { |
| 377 | return e.Value() | 353 | return e.Value() |
| 378 | } | 354 | } |
| 379 | 355 | ||
| 380 | func (e *IntegerField) Clean() error { | ||
| 381 | return nil | ||
| 382 | } | ||
| 383 | |||
| 384 | var _ Fielder = new(IntegerField) | 356 | var _ Fielder = new(IntegerField) |
| 385 | 357 | ||
| 386 | // -9223372036854775808 to 9223372036854775807. | 358 | // -9223372036854775808 to 9223372036854775807. |
| ... | @@ -421,10 +393,6 @@ func (e *BigIntegerField) RawValue() interface{} { | ... | @@ -421,10 +393,6 @@ func (e *BigIntegerField) RawValue() interface{} { |
| 421 | return e.Value() | 393 | return e.Value() |
| 422 | } | 394 | } |
| 423 | 395 | ||
| 424 | func (e *BigIntegerField) Clean() error { | ||
| 425 | return nil | ||
| 426 | } | ||
| 427 | |||
| 428 | var _ Fielder = new(BigIntegerField) | 396 | var _ Fielder = new(BigIntegerField) |
| 429 | 397 | ||
| 430 | // 0 to 65535 | 398 | // 0 to 65535 |
| ... | @@ -465,10 +433,6 @@ func (e *PositiveSmallIntegerField) RawValue() interface{} { | ... | @@ -465,10 +433,6 @@ func (e *PositiveSmallIntegerField) RawValue() interface{} { |
| 465 | return e.Value() | 433 | return e.Value() |
| 466 | } | 434 | } |
| 467 | 435 | ||
| 468 | func (e *PositiveSmallIntegerField) Clean() error { | ||
| 469 | return nil | ||
| 470 | } | ||
| 471 | |||
| 472 | var _ Fielder = new(PositiveSmallIntegerField) | 436 | var _ Fielder = new(PositiveSmallIntegerField) |
| 473 | 437 | ||
| 474 | // 0 to 4294967295 | 438 | // 0 to 4294967295 |
| ... | @@ -509,10 +473,6 @@ func (e *PositiveIntegerField) RawValue() interface{} { | ... | @@ -509,10 +473,6 @@ func (e *PositiveIntegerField) RawValue() interface{} { |
| 509 | return e.Value() | 473 | return e.Value() |
| 510 | } | 474 | } |
| 511 | 475 | ||
| 512 | func (e *PositiveIntegerField) Clean() error { | ||
| 513 | return nil | ||
| 514 | } | ||
| 515 | |||
| 516 | var _ Fielder = new(PositiveIntegerField) | 476 | var _ Fielder = new(PositiveIntegerField) |
| 517 | 477 | ||
| 518 | // 0 to 18446744073709551615 | 478 | // 0 to 18446744073709551615 |
| ... | @@ -553,10 +513,6 @@ func (e *PositiveBigIntegerField) RawValue() interface{} { | ... | @@ -553,10 +513,6 @@ func (e *PositiveBigIntegerField) RawValue() interface{} { |
| 553 | return e.Value() | 513 | return e.Value() |
| 554 | } | 514 | } |
| 555 | 515 | ||
| 556 | func (e *PositiveBigIntegerField) Clean() error { | ||
| 557 | return nil | ||
| 558 | } | ||
| 559 | |||
| 560 | var _ Fielder = new(PositiveBigIntegerField) | 516 | var _ Fielder = new(PositiveBigIntegerField) |
| 561 | 517 | ||
| 562 | // A large text field. | 518 | // A large text field. |
| ... | @@ -592,8 +548,4 @@ func (e *TextField) RawValue() interface{} { | ... | @@ -592,8 +548,4 @@ func (e *TextField) RawValue() interface{} { |
| 592 | return e.Value() | 548 | return e.Value() |
| 593 | } | 549 | } |
| 594 | 550 | ||
| 595 | func (e *TextField) Clean() error { | ||
| 596 | return nil | ||
| 597 | } | ||
| 598 | |||
| 599 | var _ Fielder = new(TextField) | 551 | var _ Fielder = new(TextField) | ... | ... |
| ... | @@ -128,11 +128,15 @@ func newFieldInfo(mi *modelInfo, field reflect.Value, sf reflect.StructField) (f | ... | @@ -128,11 +128,15 @@ func newFieldInfo(mi *modelInfo, field reflect.Value, sf reflect.StructField) (f |
| 128 | 128 | ||
| 129 | fi = new(fieldInfo) | 129 | fi = new(fieldInfo) |
| 130 | 130 | ||
| 131 | if field.Kind() != reflect.Ptr && field.Kind() != reflect.Slice && field.CanAddr() { | 131 | addrField = field |
| 132 | if field.CanAddr() && field.Kind() != reflect.Ptr { | ||
| 132 | addrField = field.Addr() | 133 | addrField = field.Addr() |
| 133 | } else { | 134 | if _, ok := addrField.Interface().(Fielder); !ok { |
| 135 | if field.Kind() == reflect.Slice { | ||
| 134 | addrField = field | 136 | addrField = field |
| 135 | } | 137 | } |
| 138 | } | ||
| 139 | } | ||
| 136 | 140 | ||
| 137 | parseStructTag(sf.Tag.Get(defaultStructTagName), &attrs, &tags) | 141 | parseStructTag(sf.Tag.Get(defaultStructTagName), &attrs, &tags) |
| 138 | 142 | ... | ... |
| ... | @@ -16,7 +16,6 @@ type Fielder interface { | ... | @@ -16,7 +16,6 @@ type Fielder interface { |
| 16 | FieldType() int | 16 | FieldType() int |
| 17 | SetRaw(interface{}) error | 17 | SetRaw(interface{}) error |
| 18 | RawValue() interface{} | 18 | RawValue() interface{} |
| 19 | Clean() error | ||
| 20 | } | 19 | } |
| 21 | 20 | ||
| 22 | type Ormer interface { | 21 | type Ormer interface { |
| ... | @@ -84,17 +83,6 @@ type RawSeter interface { | ... | @@ -84,17 +83,6 @@ type RawSeter interface { |
| 84 | Prepare() (RawPreparer, error) | 83 | Prepare() (RawPreparer, error) |
| 85 | } | 84 | } |
| 86 | 85 | ||
| 87 | type IFieldError interface { | ||
| 88 | Name() string | ||
| 89 | Error() error | ||
| 90 | } | ||
| 91 | |||
| 92 | type IFieldErrors interface { | ||
| 93 | Get(string) IFieldError | ||
| 94 | Set(string, IFieldError) | ||
| 95 | List() []IFieldError | ||
| 96 | } | ||
| 97 | |||
| 98 | type stmtQuerier interface { | 86 | type stmtQuerier interface { |
| 99 | Close() error | 87 | Close() error |
| 100 | Exec(args ...interface{}) (sql.Result, error) | 88 | Exec(args ...interface{}) (sql.Result, error) | ... | ... |
-
Please register or sign in to post a comment