Detect the créer URL before matching product_id.

This commit is contained in:
Rémy HUBSCHER 2020-04-26 16:20:07 +02:00
parent 2f1cb49f91
commit 2be48a0ca8
No known key found for this signature in database
GPG key ID: A500E24B95405094

View file

@ -29,6 +29,32 @@ async def list_products(request, response, id):
response.html(template_name, template_params)
@app.route("/produits/{delivery_id}/producteurs/créer", methods=["GET", "POST"])
async def create_producer(request, response, delivery_id):
delivery = Delivery.load(delivery_id)
producer = None
if request.method == "POST":
form = request.form
name = form.get("name")
producer_id = slugify(name)
producer = Producer(name=name, id=producer_id)
producer.referent = form.get("referent")
producer.referent_tel = form.get("referent_tel")
producer.referent_name = form.get("referent_name")
producer.description = form.get("description")
producer.contact = form.get("contact")
delivery.producers[producer_id] = producer
delivery.persist()
response.message(f"« {producer.name} » à bien été créé !")
response.redirect = f"/produits/{delivery.id}/producteurs/{producer.id}"
response.html(
"products/edit_producer.html", {"delivery": delivery, "producer": producer}
)
@app.route("/produits/{delivery_id}/producteurs/{producer_id}", methods=["GET", "POST"])
async def edit_producer(request, response, delivery_id, producer_id):
delivery = Delivery.load(delivery_id)
@ -83,32 +109,6 @@ async def delete_producer(request, response, delivery_id, producer_id):
)
@app.route("/produits/{delivery_id}/producteurs/créer", methods=["GET", "POST"])
async def create_producer(request, response, delivery_id):
delivery = Delivery.load(delivery_id)
producer = None
if request.method == "POST":
form = request.form
name = form.get("name")
producer_id = slugify(name)
producer = Producer(name=name, id=producer_id)
producer.referent = form.get("referent")
producer.referent_tel = form.get("referent_tel")
producer.referent_name = form.get("referent_name")
producer.description = form.get("description")
producer.contact = form.get("contact")
delivery.producers[producer_id] = producer
delivery.persist()
response.message(f"« {producer.name} » à bien été créé !")
response.redirect = f"/produits/{delivery.id}/producteurs/{producer.id}"
response.html(
"products/edit_producer.html", {"delivery": delivery, "producer": producer}
)
@app.route(
"/produits/{delivery_id}/producteurs/{producer_id}/produits/{product_ref}",
methods=["GET", "POST"],