From ea96c6a84996781bf086e9399606d7a35fda08c9 Mon Sep 17 00:00:00 2001 From: Chaolei Li Date: Wed, 6 Dec 2017 17:27:59 +0800 Subject: [PATCH] To make etcd models object more like a dict. Add items iteritems and keys functions in etcd.models:Base to make the etcd model object more like a dict. When we need pass the dict object, we don't need use model.as_dict any more, pass the model object will be ok. Just like the way we use sql model object. Change-Id: Ic4d7e1c1cc266ee6d265b56e0ab56643ec86105a --- zun/db/etcd/models.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/zun/db/etcd/models.py b/zun/db/etcd/models.py index 17d11b555..4597ec520 100644 --- a/zun/db/etcd/models.py +++ b/zun/db/etcd/models.py @@ -70,6 +70,18 @@ class Base(object): client.write(path, json.dump_as_bytes(self.as_dict())) return + def items(self): + """Make the model object behave like a dict.""" + return self.as_dict().items() + + def iteritems(self): + """Make the model object behave like a dict.""" + return self.as_dict().items() + + def keys(self): + """Make the model object behave like a dict.""" + return [key for key, value in self.iteritems()] + class ZunService(Base): """Represents health status of various zun services"""