Update soft_delete.go

This commit is contained in:
Jinzhu 2023-02-01 14:35:45 +08:00 committed by GitHub
parent 79d4f0f6bd
commit 7d1fa91d48
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -50,18 +50,12 @@ func (DeletedAt) QueryClauses(f *schema.Field) []clause.Interface {
} }
func parseZeroValueTag(f *schema.Field) sql.NullString { func parseZeroValueTag(f *schema.Field) sql.NullString {
// parse zeroValue tag if not nil if v, ok := f.TagSettings["ZEROVALUE"]; ok {
tagSetting := schema.ParseTagSetting(f.Tag.Get("gorm"), ";") if _, err := now.Parse(v); err == nil {
zeroValueTag := tagSetting["ZEROVALUE"] return sql.NullString{String: v, Valid: true}
zeroValue := sql.NullString{Valid: false}
if len(zeroValueTag) > 0 {
// validate it
_, err := now.Parse(zeroValueTag)
if err == nil {
zeroValue = sql.NullString{String: zeroValueTag, Valid: true}
} }
} }
return zeroValue return sql.NullString{Valid: false}
} }
type SoftDeleteQueryClause struct { type SoftDeleteQueryClause struct {