人気のあるgithub.com/go-redis/redisパッケージを使用していると仮定すると、HGetAll(key).Result()
からの戻り値 map[string]string
です (ドキュメント)。式someMap["has_ended"]
キーが存在しない場合は、空の文字列に評価されます。
キーが値「true」で存在する場合にのみhasEndedがtrueである場合は、以下を使用します。
hasEnded := someMap["has_ended"] == "true"
strconv.ParseBoolを使用して、可能な値の範囲を広げます(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
}