Skip to content

Commit fe3e996

Browse files
TerryHoweTerry Howe
authored andcommitted
Keep id in _attrs
Not sure why id was pulled from _attrs, it causes some issues trying to use the resource. Change-Id: I0f5c6d33baa1662e6d37b6d9e0e40cdf51130d42
1 parent 67e0fae commit fe3e996

1 file changed

Lines changed: 4 additions & 10 deletions

File tree

openstack/resource.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -123,18 +123,12 @@ def __init__(self, attrs=None, loaded=False):
123123
if attrs is None:
124124
attrs = {}
125125

126-
self._id = attrs.pop('id', None)
127126
self._attrs = attrs
128127
self._dirty = set() if loaded else set(attrs.keys())
129128
self._loaded = loaded
130129

131130
def __repr__(self):
132-
if self._id is not None:
133-
d = {'id': self._id}
134-
d.update(self._attrs)
135-
else:
136-
d = self._attrs
137-
return "%s: %s" % (self.resource_key, d)
131+
return "%s: %s" % (self.resource_key, self._attrs)
138132

139133
##
140134
# CONSTRUCTORS
@@ -193,11 +187,11 @@ def __iter__(self):
193187
@property
194188
def id(self):
195189
# id is read only
196-
return self._id
190+
return self._attrs.get('id', None)
197191

198192
@id.deleter
199193
def id_del(self):
200-
self._id = None
194+
del self._attrs['id']
201195

202196
@property
203197
def is_dirty(self):
@@ -234,7 +228,7 @@ def create_by_id(cls, session, attrs, r_id=None):
234228

235229
def create(self, session):
236230
resp = self.create_by_id(session, self._attrs, self.id)
237-
self._id = resp.pop('id')
231+
self._attrs['id'] = resp['id']
238232
self._reset_dirty()
239233

240234
@classmethod

0 commit comments

Comments
 (0)