def post(self, meta_type):
try:
if meta_type == 'item':
service = self.item_meta_service
new_metadata = ItemMetadata(request.get_json(), version=1, active=True)
elif meta_type == 'user':
service = self.user_meta_service
new_metadata = UserMetadata(request.get_json(), version=1, active=True)
else:
raise StatusCodeException('Invalid type', 400)
if not service.get_active():
service.insert(new_metadata.to_database())
return make_response(new_metadata.to_json())
else:
raise StatusCodeException('Conflict', 409)
except StatusCodeException as ex:
return ex.to_response()
except Exception as ex:
return StatusCodeException(ex.message, 500).to_response()
评论列表
文章目录