Za předpokladu, že používáte oblíbený balíček github.com/go-redis/redis, návratová hodnota z HGetAll(key).Result() je map[string]string (doc). Výraz someMap["has_ended"] vyhodnotí se jako prázdný řetězec, pokud klíč není přítomen.
Pokud má hasEnded hodnotu true tehdy a pouze tehdy, když je klíč přítomen s hodnotou "true", použijte následující:
hasEnded := someMap["has_ended"] == "true"
Použijte strconv.ParseBool ke zpracování širšího rozsahu možných hodnot (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
}