{"record":{"id":"71c35c456dd719b4","repo":"go-gorm/gorm","slug":"failed-to-parse-s-as-default-value-for-bool-got","errorCode":null,"errorMessage":"failed to parse %s as default value for bool, got error: %v","messagePattern":"failed to parse (.+?) as default value for bool, got error: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"schema/field.go","lineNumber":238,"sourceCode":"\n\tif p, ok := field.TagSettings[\"PRECISION\"]; ok {\n\t\tfield.Precision, _ = strconv.Atoi(p)\n\t}\n\n\tif s, ok := field.TagSettings[\"SCALE\"]; ok {\n\t\tfield.Scale, _ = strconv.Atoi(s)\n\t}\n\n\t// default value is function or null or blank (primary keys)\n\tfield.DefaultValue = strings.TrimSpace(field.DefaultValue)\n\tskipParseDefaultValue := strings.Contains(field.DefaultValue, \"(\") &&\n\t\tstrings.Contains(field.DefaultValue, \")\") || strings.ToLower(field.DefaultValue) == \"null\" || field.DefaultValue == \"\"\n\tswitch reflect.Indirect(fieldValue).Kind() {\n\tcase reflect.Bool:\n\t\tfield.DataType = Bool\n\t\tif field.HasDefaultValue && !skipParseDefaultValue {\n\t\t\tif field.DefaultValueInterface, err = strconv.ParseBool(field.DefaultValue); err != nil {\n\t\t\t\tschema.err = fmt.Errorf(\"failed to parse %s as default value for bool, got error: %v\", field.DefaultValue, err)\n\t\t\t}\n\t\t}\n\tcase reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:\n\t\tfield.DataType = Int\n\t\tif field.HasDefaultValue && !skipParseDefaultValue {\n\t\t\tif field.DefaultValueInterface, err = strconv.ParseInt(field.DefaultValue, 0, 64); err != nil {\n\t\t\t\tschema.err = fmt.Errorf(\"failed to parse %s as default value for int, got error: %v\", field.DefaultValue, err)\n\t\t\t}\n\t\t}\n\tcase reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:\n\t\tfield.DataType = Uint\n\t\tif field.HasDefaultValue && !skipParseDefaultValue {\n\t\t\tif field.DefaultValueInterface, err = strconv.ParseUint(field.DefaultValue, 0, 64); err != nil {\n\t\t\t\tschema.err = fmt.Errorf(\"failed to parse %s as default value for uint, got error: %v\", field.DefaultValue, err)\n\t\t\t}\n\t\t}\n\tcase reflect.Float32, reflect.Float64:\n\t\tfield.DataType = Float","sourceCodeStart":220,"sourceCodeEnd":256,"githubUrl":"https://github.com/go-gorm/gorm/blob/1d6ce99528060be18a42be09aca8d39efcb47f28/schema/field.go#L220-L256","documentation":"Error \"failed to parse %s as default value for bool, got error: %v\" thrown in go-gorm/gorm.","triggerScenarios":"Thrown at schema/field.go:238 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a valid boolean literal in the default tag, e.g. `gorm:\"default:true\"`.","Remove or correct the default tag value so strconv.ParseBool accepts it.","Quote the default value correctly in the struct tag."],"exampleFix":"Use a valid bool literal in the default tag: `gorm:\"default:true\"` or `default:false`.","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"1d6ce99528060be18a42be09aca8d39efcb47f28","analyzedAt":"2026-08-15T13:01:23.433Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}