Skip to content

Commit 275280f

Browse files
committed
Merge branch 'master' into dont_modify_schema
2 parents 119cf75 + 3c5360c commit 275280f

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

swagger_py_codegen/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
from .command import generate
22

3-
__version__ = '0.1.18'
3+
__version__ = '0.1.19'

swagger_py_codegen/jsonschema.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,20 @@ def keys(self):
150150
return self.data.keys()
151151
return vars(self.data).keys()
152152

153+
def get_check(self, key, default=None):
154+
if isinstance(self.data, dict):
155+
value = self.data.get(key, default)
156+
has_key = key in self.data
157+
else:
158+
try:
159+
value = getattr(self.data, key)
160+
except AttributeError:
161+
value = default
162+
has_key = False
163+
else:
164+
has_key = True
165+
return value, has_key
166+
153167
def _normalize_dict(schema, data):
154168
result = {}
155169
if not isinstance(data, DataWrapper):
@@ -160,8 +174,8 @@ def _normalize_dict(schema, data):
160174
type_ = _schema.get('type', 'object')
161175

162176
# get value
163-
value = data.get(key)
164-
if value is not None:
177+
value, has_key = data.get_check(key)
178+
if has_key:
165179
result[key] = _normalize(_schema, value)
166180
elif 'default' in _schema:
167181
result[key] = _schema['default']

0 commit comments

Comments
 (0)