def post(self, name): if ItemModel.find_by_name(name): return {'message': MSG.EXISTED.format(name)}, 400 data = self.parser.parse_args() item = ItemModel(**data) safe_run(message=MSG.ERROR_INSERT.format(name), error_code=500)(item.save_to_db(item)) return item.jsonify(), 201
def put(self, name): data = self.parser.parse_args() item = ItemModel.find_by_name(name) if item is None: item = ItemModel(**data) else: for key in ['price', 'name']: setattr(item, key, data[key]) safe_run(message=MSG.ERROR_UPDATE.format(name), error_code=500)(item.save_to_db(item)) return item.jsonify(), 201