
Fixes existing pep8 errors and reenables the corresponding tox rules Change-Id: I4168a90c40173e4c35c9d75030cd592ace657508
38 lines
913 B
Python
38 lines
913 B
Python
from wsme.rest.json import tojson
|
|
from wsme import types as wtypes
|
|
|
|
|
|
class Model(wtypes.DynamicBase):
|
|
"""Base class for CMS models.
|
|
"""
|
|
|
|
def tojson(self):
|
|
return tojson(type(self), self)
|
|
|
|
"""
|
|
def __init__(self, **kwds):
|
|
self.fields = list(kwds)
|
|
for k, v in kwds.iteritems():
|
|
setattr(self, k, v)
|
|
|
|
def as_dict(self):
|
|
d = {}
|
|
for f in self.fields:
|
|
v = getattr(self, f)
|
|
if isinstance(v, Model):
|
|
v = v.as_dict()
|
|
elif isinstance(v, list) and v and isinstance(v[0], Model):
|
|
v = [sub.as_dict() for sub in v]
|
|
d[f] = v
|
|
return d
|
|
|
|
def __eq__(self, other):
|
|
return self.as_dict() == other.as_dict()
|
|
|
|
@classmethod
|
|
def get_field_names(cls):
|
|
fields = inspect.getargspec(cls.__init__)[0]
|
|
return set(fields) - set(["self"])
|
|
|
|
"""
|