code: func (f *FkMode) UnmarshalText(text []byte) error {
  	switch strings.ToLower(string(text)) {
  	case "smart", "default":
  		*f = FkModeSmart
  	case "parent":
  		*f = FkModeParent
  	case "field":
  		*f = FkModeField
  	case "key":
  		*f = FkModeKey
  
  	default:
  		return errors.New("invalid FkMode")
  	}
  
  	return nil
  }
docs: // UnmarshalText unmarshals FkMode from text.