Author: Pedro Lucas Porcellis <pedrolucasporcellis@gmail.com>
Simple way to update balance of a product
src/blueprints/products.py | 22 +++++++++++++++++++++- src/templates/edit_product_balance.html | 16 ++++++++++++++++
diff --git a/src/blueprints/products.py b/src/blueprints/products.py index 4ed5e4086e1a9a884f5b021285d28f2f050a0ce5..4545a77d63eea1f26fe500658455885cf27a0b7b 100644 --- a/src/blueprints/products.py +++ b/src/blueprints/products.py @@ -1,8 +1,9 @@ -from flask import Blueprint, flash, request, render_template, redirect, url_for +from flask import Blueprint, jsonify, flash, request, render_template, redirect, url_for from ..types.product import Product from ..types.group import Group from ..types.product_category import ProductCategory +import pdb import json pro = Blueprint('products', __name__, url_prefix = '/products') @@ -44,3 +45,22 @@ product.create() return redirect(url_for('products.index')) + +@pro.route("/<id>", methods = ['GET']) +def show(id): + product = Product.query.filter_by(id = id).first() + + return jsonify(product.to_json()) + +@pro.route("/<id>/balance", methods = ['GET', 'POST']) +def balance(id): + product = Product.query.filter_by(id = id).first() + + if request.method == "GET": + return render_template('edit_product_balance.html', product = product, title = "Editar Balanco - Feira Virtual Bem da Terra") + else: + product.balance.update( + value = float(request.form.get('value')) + ) + + return redirect(url_for('products.show', id = product.id)) diff --git a/src/templates/edit_product_balance.html b/src/templates/edit_product_balance.html new file mode 100644 index 0000000000000000000000000000000000000000..b555a6a54988d616856597f20731269f4ffa1aa0 --- /dev/null +++ b/src/templates/edit_product_balance.html @@ -0,0 +1,16 @@ +{% extends 'layout.html' %} + +{% block body %} + +<form action="/products/{{product.id}}/balance" method="POST"> + <div class="form-section"> + <label for="">Total</label> + <input name="value" type="number"> + </div> + + <div class="form-action"> + <button type="submit">Salvar</button> + </div> +</form> + +{% endblock %}