def delete(self, name): item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': 'item was deleted successfully'} else: return {'message': 'Item does not exist'}
def put(self, name): data = Item.parser.parse_args() new_item = ItemModel(name, data['price']) # check whether item exists try: existing_item = ItemModel.find_by_name(name) except: return {'message': 'db search failed'}, 500 # if item exists then update it if existing_item: try: existing_item.price = data['price'] existing_item.update_item() except: return {'message': 'item update failed'}, 500 return { "message": "Item '{0}' updated successfully".format(name) }, 200 # if item is not existing then create a new item try: new_item.insert_item() except: return {'message': 'item insertion failed'}, 500 return {'message': "new item '{0}' created".format(name)}, 201
def get(self, name): # from resource we will only use get method item = ItemModel.find_by_name(name) if item: return item.json() return {'message': 'Item not found'}, 404
def delete(self, name): item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': 'Item deleted'}, 202 else: return {'message': 'Item does not exist'}, 404
def delete(self, name): item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': 'Item deleted'} return {'message': 'Item not found'}
def post(self, name): if ItemModel.find_by_name(name): return { "message": "An item with the name {} already exists".format(name) }, 400 # bad request data = self.parser.parse_args() # item={"name":name, "price":data["price"]} item = ItemModel( name, data["price"], data['store_id']) # item becomes object of class ItemModel # exception handling: if database insert fails; try inserting if exception occurred then the except return message try: # ItemModel.insert(item) item.save_to_db() # calling object above except: return { "message": "An error occurred while inserting the item." }, 500 # Internal server error return item.json(), 201 # new item created; always return json
def post(self, name): #data = request.get_json() #if next(filter(lambda x: x['name'] == name, items),None): if ItemModel.find_by_name(name): return { 'message': "An item with name '{}' already exist".format(name) }, 400 data = Item.parser.parse_args() #data = request.get_json() item = ItemModel(name, data['price'], data['store_id']) #items.append(item) # Write item to the database # connection = sqlite3.connect('samdata.db') # cursor = connection.cursor() # # query = "INSERT INTO items VALUES(?, ?)" # cursor.execute(query, (item['name'], item['price'])) # # connection.commit() # connection.close() #method fot post and put item.save_to_db() # try: # item.insert(item) # except: # return {"message": " An error occurred inserting the item. Please check the insert code"}, 500 return item.json(), 201
def delete(self, item_name): item = ItemModel.find_by_name(item_name) if item: try: item.delete_from_database() except sqlalchemy.exc.DatabaseError: return {"message": "error - internal database error"}, 500 return {"item": "deleted"}, 200
def get(self, name): try: item = ItemModel.find_by_name(name) except: return {'message': 'An error occurred finding the item.'}, 500 if item: return item.json() return {'message': 'Item not found'}, 404
def get(self, item_name): if max_user_requests(flask_jwt.current_identity.username): return max_requests_message(), 400 item = ItemModel.find_by_name(item_name) if item: return item.json(), 200 else: return {"item": None}, 404
def delete(cls, name): claims = get_jwt_claims() if not claims['is_admin']: return {'message': ADMIN_PRIVILEGE_REQUIRED} item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': ITEM_DELETED}
def get(self, name): # for it in items: # if (it['name'] == name): # return it item = ItemModel.find_by_name(name) if item: return item.json() return {'message': 'Item not found'}, 404
def delete(self, name): claims = get_jwt() if not claims['is_admin']: return {'message': 'Admin privilege required!'}, 401 item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': 'Item deleted'}
def post(self, name): if ItemModel.find_by_name(name): return { 'message': 'an item with name {} already exists'.format(name) }, 400 data = Item.parser.parse_args() item = ItemModel(name, data['price'], data['store_id']) item.save_to_db() return item.json(), 201
def delete(self, name): item = ItemModel.find_by_name(name) if item: try: item.delete_from_db() return {"message": "Item has been deleted"} except: return {"There was an error, please try again"} return {"Message": "This item does not exist"}
def delete(self, name): print('IDENTITY') claims = get_jwt_claims() if not claims['is_admin']: return {'message': 'Admin privilege required'}, 401 item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': 'Item deleted successfully'}
def put(cls, name): data = Item.parser.parse_args() item = ItemModel.find_by_name(name) if item: item.price = data['price'] item.store_id = data['store_id'] else: item = ItemModel(name, **data) item.save_to_db() return item.json()
def put(self, name): data = Item.parser.parse_args() item = ItemModel.find_by_name(name) if item is None: item = ItemModel(name, **data) else: item.price = data["price"] item.store_id = data["store_id"] item.save_to_db() return item.json()
def get(self, name): # for item in items: #lamda function--> item = next(filter(lambda x:x['name] == name, items)) # if item['name'] == name: # return item # return {'message':f'item with name {name} not found'}, 404 item = ItemModel.find_by_name(name) if item: return item.json() else: return {'message': f'item with name {name} not found'}, 404
def post(cls, name): if ItemModel.find_by_name(name): return {'message': NAME_ALREADY_EXISTS.format(name)} data = Item.parser.parse_args() item = ItemModel(name, **data) try: item.save_to_db() except: return {"message": INSERTION_ERROR} return item.json()
def put(self, name): data = Item.parser.parse_args() item = ItemModel.find_by_name(name) if not item: item = ItemModel(name, **data) else: item.price = data['price'] item.save_to_db() return item.json()
def put(self, name): data = Item.parser.parse_args() item = ItemModel.find_by_name(name) if item is None: item = ItemModel(name, data['price'], data['store_id']) else: item.price = data['price'] item.save_to_db() return item.json()
def post(self, name): if ItemModel.find_by_name(name): return {"message": f'An item with name "{name}" already exists'}, 400 data = Item.parser.parse_args() print("a") item = ItemModel(name, **data) try: item.save_to_db() except: return {"message": "An error occurred inserting the item."}, 500 return item.json(), 201
def get(self, name): try: item = ItemModel.find_by_name( name) # self.find_by_name(name) will also work here except: return {'message': 'db search failed'}, 500 if item: # rather than returning the object itself we should return a dictionary # this can be done by calling the get_json() method inside the item model to create a dictionary. return item.get_json(), 200 return {'message': 'item not found!'}, 404
def delete(self, name): if not ItemModel.find_by_name(name): return { 'message': 'item with name {0} NOT FOUND!'.format(name) }, 404 connection = sqlite3.connect('data.db') cursor = connection.cursor() delete_query = 'DELETE FROM ITEMS WHERE NAME=?' cursor.execute(delete_query, (name, )) connection.commit() connection.close() return {'message': "Item: '{0}' deleted".format(name)}, 200
def put(self, item_name): # data = request.get_json() # replaced by parser code above data = Item.parser.parse_args() item = ItemModel.find_by_name(item_name) if item is None: item = ItemModel(item_name, data["price"], data["store_id"]) else: item.price = data["price"] item.save_to_db() return item.json()
def delete(self, name): # connection = sqlite3.connect('data.db') # cursor = connection.cursor() # # query = "DELETE FROM items WHERE name=?" # cursor.execute(query, (name,)) # connection.commit() # connection.close() item = ItemModel.find_by_name(name) if item: item.delete_from_db() return {'message': "Item deleted"}
def put(self, name): data = Item.request_parser.parse_args() item = ItemModel.find_by_name(name) if item is None: item = ItemModel(name, data['price'], data['store_id']) else: item.price = data['price'] try: item.save_to_db() except: return {'message': 'Internal server error while updating'}, 500 return item.json()
def put(self, name): data = Item.parser.parse_args() item = ItemModel.find_by_name(name) if item is None: item = ItemModel(name, **data) else: item.price = data['price'] try: item.save_to_db() return item.json(), 201 except: return {"message": "An error iccorred while updateing item"}, 500
def get(self, name): # The code below was used when the item was stored in a list # # the next() get the first match from filter() after lambda has gone through the list, if no match isfound it returns 'None' | filter retuns an object # each_item = next(filter(lambda x: x['name'] == name, items), None) # # for each_item in items: # # if each_item['name'] == name: # # return each_item # return {"item": each_item}, 200 if each_item else 404 item = ItemModel.find_by_name(name) if item: return item.json() return {"message": f"The item {name} does not exist"}, 400