I am using nested fields to validate an incoming post request using @api.expect
like
payload1 = api.model('Payload', {
'prop1': fields.Nested({'prop1_inner' : fields.String(required=True)})
})
payload2 = api.model('Payload', {
'prop1': fields.Nested(api.model("metadata", {
'prop1_inner': fields.String(required=True)
}))
})
#doesn't work
@api.expect(payload1 , validate=True)
def post(self):
#works
@api.expect(payload2 , validate=True)
def post(self):
I am getting an exception when I use payload1
like
'dict' object has no attribute 'name'
I expect both forms to validate the incoming request. Would like to know the reason nested fields without model wrapper doesn't work.
Consider this. Nested models are not usually defined inside. They have to be a discrete model themselves with a discrete name, As swagger documents nested fields as separate models and so, here,