def add_product(): new_product = Product() new_product.name = request.form['name'] new_product.description = request.form['description'] db.session.add(new_product) db.session.commit() return product_schema.jsonify(new_product)
def read_product(id): product = db.session.query(Product).get( id) # SQLAlchemy request => 'SELECT * FROM products' if product is None: abort(404) else: return product_schema.jsonify(product)
def update_product(): body = request.get_json() product = db.session.query(Product).get(body['id']) product.name = body['name'] product.description = body['description'] db.session.commit() return product_schema.jsonify(product)
def update_product(): new_product = Product() new_product.name = request.form['name'] new_product.description = request.form['description'] db.session.query(Product).filter_by(name=new_product.name).update({"description" : new_product.description}) db.session.commit() return product_schema.jsonify(new_product)
def post_products(): product_name = request.get_json()["name"] new_product = Product() new_product.name = product_name db.session.add(new_product) db.session.commit() return product_schema.jsonify(new_product), 201
def product_html(id): product = db.session.query(Product).get(id) return render_template('product.html', product=product) print(id, flush=True) print(product, flush=True) if product != None: return product_schema.jsonify(product), 200 return '', 404
def product_by_id(id): if request.method == "GET": product = db.session.query(Product).get(id) result = product_schema.jsonify(product) elif request.method == 'PATCH': product = db.session.query(Product).get(id) product.name = request.json['name'] product.description = request.json['description'] db.session.commit() result = product_schema.jsonify(product) else: product = db.session.query(Product).get(id) db.session.delete(product) db.session.commit() result = product_schema.jsonify(product) return render_template('product_detail.html', product=product)
def create_product(): body = request.get_json() # new_product = product_schema.load(body) product = Product(name=body['name'], description=body.get('description', '')) db.session.add(product) db.session.commit() return product_schema.jsonify(product), 201
def product(product_id): product = db.session.query(Product).get(product_id) if product == None: return '{ "message": "not found"}', 404 if request.method == 'GET': return product_schema.jsonify(product), 200 elif request.method == 'DELETE': db.session.delete(product) db.session.commit() return '', 204 elif request.method == 'PATCH': data = request.get_json() if data['name'] == '': return '', 422 product.name = data['name'] db.session.commit() return product_schema.jsonify(product), 201
def create_product(): if "name" in request.get_json(): name = request.get_json()["name"] product = Product() product.name = name db.session.add(product) db.session.commit() return (product_schema.jsonify(product), 201) else: return ('', 400)
def patch(self, id): body = request.get_json() name = body.get('name') if name is None: abort(400) product = Product.query.get(id) product.name = name db.session.commit() return product_schema.jsonify(product)
def get_del_product(product_id): product = db.session.query(Product).get(product_id) if product: if request.method == 'GET': return product_schema.jsonify(product), 200 else: db.session.delete(product) db.session.commit() return '', 204 return 'Product Not Found', 404
def product_by_id(id): if request.method == 'GET': product_by_id = db.session.query(Product).get(id) #print(product_by_id) return render_template('product.html', product=product_by_id) elif request.method == 'DELETE': product_by_id = db.session.query(Product).get(id) db.session.delete(product_by_id) db.session.commit() return product_schema.jsonify(product_by_id) else: product_by_id = db.session.query(Product).get(id) dic = request.get_json() if "name" in dic: product_by_id.name = request.json["name"] if "description" in dic: product_by_id.description = request.json["description"] db.session.commit() return product_schema.jsonify(product_by_id)
def create_product(): body = request.get_json() if not "name" in body or body["name"] is None: abort(422) new_product = Product() new_product.name = body["name"] db.session.add(new_product) db.session.commit() response = make_response(product_schema.jsonify(new_product), 201) return response
def create_products(): name = request.json['name'] description = request.json['description'] product = product(name=name, description=description) db.session.add(product) db.session.commit() return product_schema.jsonify(product), 201
def products(): if request.method == 'GET': products = db.session.query(Product).all() return render_template('home.html', products=products) else: new_product = Product() new_product.name = request.json["name"] new_product.description = request.json["description"] db.session.add(new_product) db.session.commit() return product_schema.jsonify(new_product)
def upd_product(prod_id): produit = db.session.query(Product).get(prod_id) rf_name = request.form['name'] # text = Product(text=request.form['text']) # print(f"name = {name}, text = {text}") produit.name = rf_name # Product.text = text # return product_schema.jsonify(product) #product = db.session.add(name) db.session.commit() return product_schema.jsonify(produit)
def post_products(): try: payload = json.loads(request.data) except ValueError: return jsonify({"error": "Bad payload received"}), 422 if 'name' not in payload or 'description' not in payload: return jsonify({"error": "Bad payload received"}), 422 product = Product(name=payload['name'], description=payload['description']) db.session.add(product) db.session.flush() db.session.commit() return product_schema.jsonify(product), 201
def products(): if request.method == 'GET': products = db.session.query( Product).all() # SQLAlchemy request => 'SELECT * FROM products' return products_schema.jsonify(products) product = Product() newprod = request.get_json() product.name = newprod['name'] db.session.add(product) db.session.commit() return product_schema.jsonify(product), 201
def products(): if request.method == "GET": products = db.session.query(Product).all() # SQLAlchemy request => 'SELECT * FROM products' result = products_schema.jsonify(products) else: product_name = request.json['name'] product_desc = request.json['description'] new_product = Product(product_name, product_desc) db.session.add(new_product) db.session.commit() result = product_schema.jsonify(new_product) return result
def update_product(product_id: int): product = db.session.query(Product).get_or_404( product_id) # SQLAlchemy request => 'SELECT * FROM products' try: for attr in ['name', 'description']: setattr(product, attr, request.get_json()[attr]) except KeyError: pass db.session.commit() return product_schema.jsonify(product)
def product(id): if request.method=="GET": product=db.session.query(Product).get(id) print(product) return product_schema.jsonify(product) elif request.method=="DELETE": try: db.session.query(Product).\ filter(Product.id == id).delete() db.session.commit() return jsonify({"status":"deleted","id":id}) except Exeption as e: return jsonify({"status":"error","description":str(e)})
def create_product(): requested_object = request.get_json() new_object = Product() try: for attr in ['name', 'description']: setattr(new_object, attr, requested_object[attr]) except KeyError: return '', 400 db.session.add(new_object) db.session.commit() return product_schema.jsonify(new_object)
def products(): if request.method=="GET": products = db.session.query(Product).all() # SQLAlchemy request => 'SELECT * FROM products' return products_schema.jsonify(products) if request.method=="POST": json=request.json prod = Product() prod.name = json["name"] prod.description = json["description"] db.session.add(prod) db.session.commit() #insert product return product_schema.jsonify(prod)
def create_product(): #get json body json = request.get_json() #validate parameters in json if type(json) is dict: new_product = process_create_poduct(json) return product_schema.jsonify(new_product), 201 elif type(json) is list: #bulk create created_products = [] for item in json: created_products.append(process_create_poduct(item)) return products_schema.jsonify(created_products), 201 else: abort(422)
def product(id): product = db.session.query(Product) if request.method == 'GET': return product_schema.jsonify(product.get(id)) if request.method == 'DELETE': db.session.delete(product.get(id)) db.session.commit() return make_response("Deleted",204) if request.method == 'PATCH': content = request.get_json() item = product.get(id) print(f"Item: [{item}] type is [{type(item)}]", file=sys.stderr) print(f"Content: [{content}] type is [{type(content)}]", file=sys.stderr) item.name = content["name"] db.session.commit() return make_response("Updated",204)
def products_id(id): if request.method == 'GET': products_id = db.session.query(Product).get(id) if products_id: return product_schema.jsonify(products_id) else: return "Id not found", 404 elif request.method == 'DELETE': products_id = db.session.query(Product).get(id) db.session.delete(products_id) db.session.commit() return f'product with id: {id} successflully deleted', 200 elif request.method == 'PATCH': products_id = db.session.query(Product).get(id) products_id.name = request.get_json()['name'] db.session.commit() return f'product with id: {id} successflully updated', 200 else: return "Read the API documentation", 403
def create_product(): product = Product() body = request.get_json() # Test en version condensee # filtered_body = { key, value for key, value in body if key in ["name","description"]} #product = Product(**filtered_body) name = body.get("name") # Test dans le body que name existe if name is not None: product.name = name description = body.get( "description") # Test dans le body que la description existe if description is not None: product.description = description db.session.add(product) db.session.commit() return product_schema.jsonify(product), 201
def create_one_product(): product = Product() product.name = "Ajout via API create_one_product" db.session.add(product) db.session.commit() ########################################################## #TODO# Comment tester si le commit est OK ? # failed=False # try: # db_session.commit() # except Exception as e: # #log your exception in the way you want -> log to file, log as error with default logging, send by email. It's upon you # db_session.rollback() # db_session.flush() # for resetting non-commited .add() # failed=True #some use of failed var, specific for your case if you need it # Est-il possible de récupérer le code retour du commit ? ########################################################## if product is None: abort(422) return product_schema.jsonify(product), 201
def get_products(id): if request.method == 'GET': products = db.session.query(Product).get( id) # SQLAlchemy request => 'SELECT * FROM products' return product_schema.jsonify(products) elif request.method == 'DELETE': db.session.query(Product).filter(Product.id == id).delete( synchronize_session=False) db.session.commit() return '', 204 elif request.method == 'PATCH': if request.get_json() is None: return jsonify(''), 422 my_json = request.get_json() db.session.query(Product).filter(Product.id == my_json['id']).update( { Product.name: my_json['name'], Product.description: my_json['description'] }, synchronize_session=False) db.session.commit() return jsonify(''), 204