mirror of https://github.com/openspug/spug
U - 增强to_json方法
parent
b72944385f
commit
2561d821c9
|
@ -47,7 +47,12 @@ class ModelMixin(object):
|
|||
record = cls(**kwargs).save()
|
||||
return record
|
||||
|
||||
def to_json(self):
|
||||
if hasattr(self, '__table__'):
|
||||
def to_json(self, excludes=None, selects=None):
|
||||
if not hasattr(self, '__table__'):
|
||||
raise AssertionError('<%r> does not have attribute for __table__' % self)
|
||||
elif selects:
|
||||
return {i: getattr(self, i) for i in selects}
|
||||
elif excludes:
|
||||
return {i.name: getattr(self, i.name) for i in self.__table__.columns if i.name not in excludes}
|
||||
else:
|
||||
return {i.name: getattr(self, i.name) for i in self.__table__.columns}
|
||||
raise AssertionError('<%r> does not have attribute for __table__' % self)
|
||||
|
|
|
@ -70,7 +70,7 @@ class Argument(object):
|
|||
:param bool required: is required
|
||||
"""
|
||||
|
||||
def __init__(self, name, default=None, required=True, type=str, filter=None, help=None, nullable=False):
|
||||
def __init__(self, name, default=None, required=True, type=None, filter=None, help=None, nullable=False):
|
||||
self.name = name
|
||||
self.default = default
|
||||
self.type = type
|
||||
|
|
Loading…
Reference in New Issue