def put(self, name): data = Item.parser.parse_args() #item = next(filter(lambda x: x['name'] == name, items), None) item = ItemModel.findByName(name) #updatedItem = {'name': name, 'price': data['price']} updatedItem = ItemModel(name, data['price']) if item: # item['name'] = name # item['price'] = data['price'] try: updatedItem.updateItem() #ItemModel.updateItem(updatedItem) except: return {"Error": "Error updating item {}".format(name)}, 500 #item.update(data) #return {"Message": "item {} updated successfully".format(name)}, 200 else: #items.append(item) try: updatedItem.addItem() #ItemModel.addItem(updatedItem) except: return {"Error": "Error creating item {}".format(name)}, 500 #return {'Message': "Item {} added successfully".format(name)}, 201 return updatedItem.json(), 200
def post(cls, name): # if next(filter(lambda x: x['name'] == name, items), None) is not None: # return {'message': "item {} is already existing".format(name)}, 400 item = ItemModel.findByName(name) if item: return {'message': "item {} is already existing".format(name)}, 400 data = Item.parser.parse_args() #item = {'name': name, 'price': data['price']} item = ItemModel(name, data['price']) try: #ItemModel.addItem(item) item.addItem() except: return {"Error": "Error creating new item {}".format(name)}, 500 #items.append(item) return item.json(), 201