Redis
 sql >> Datenbank >  >> NoSQL >> Redis

So laden Sie einen Hash sicher und konvertieren einen Wert in einen booleschen Wert, falls vorhanden

Angenommen, Sie verwenden das beliebte Paket github.com/go-redis/redis, der Rückgabewert von HGetAll(key).Result() ist ein map[string]string (Dok.). Der Ausdruck someMap["has_ended"] wird zu einer leeren Zeichenfolge ausgewertet, wenn der Schlüssel nicht vorhanden ist.

Wenn hasEnded genau dann wahr ist, wenn der Schlüssel mit dem Wert „true“ vorhanden ist, dann verwenden Sie Folgendes:

 hasEnded := someMap["has_ended"] == "true"

Verwenden Sie strconv.ParseBool, um einen größeren Bereich möglicher Werte zu verarbeiten (1, t, T, TRUE, true, True, 0, f, F, FALSE, false, False):

 hasEnded, err := strconv.ParseBool(someMap["has_ended"])
 if err != nil {
     // handle invalid value or missing value, possibly by setting hasEnded to false
 }