Keep id in _attrs
Not sure why id was pulled from _attrs, it causes some issues trying to use the resource. Change-Id: I0f5c6d33baa1662e6d37b6d9e0e40cdf51130d42
This commit is contained in:
@@ -123,18 +123,12 @@ class Resource(collections.MutableMapping):
|
||||
if attrs is None:
|
||||
attrs = {}
|
||||
|
||||
self._id = attrs.pop('id', None)
|
||||
self._attrs = attrs
|
||||
self._dirty = set() if loaded else set(attrs.keys())
|
||||
self._loaded = loaded
|
||||
|
||||
def __repr__(self):
|
||||
if self._id is not None:
|
||||
d = {'id': self._id}
|
||||
d.update(self._attrs)
|
||||
else:
|
||||
d = self._attrs
|
||||
return "%s: %s" % (self.resource_key, d)
|
||||
return "%s: %s" % (self.resource_key, self._attrs)
|
||||
|
||||
##
|
||||
# CONSTRUCTORS
|
||||
@@ -193,11 +187,11 @@ class Resource(collections.MutableMapping):
|
||||
@property
|
||||
def id(self):
|
||||
# id is read only
|
||||
return self._id
|
||||
return self._attrs.get('id', None)
|
||||
|
||||
@id.deleter
|
||||
def id_del(self):
|
||||
self._id = None
|
||||
del self._attrs['id']
|
||||
|
||||
@property
|
||||
def is_dirty(self):
|
||||
@@ -234,7 +228,7 @@ class Resource(collections.MutableMapping):
|
||||
|
||||
def create(self, session):
|
||||
resp = self.create_by_id(session, self._attrs, self.id)
|
||||
self._id = resp.pop('id')
|
||||
self._attrs['id'] = resp['id']
|
||||
self._reset_dirty()
|
||||
|
||||
@classmethod
|
||||
|
Reference in New Issue
Block a user