Я хочу сделать счетчик количества товара в указанной категории c. Я могу напечатать сумму продукта в указанной категории c, но не могу указать сумму. Например, в категории мыши у меня есть 2 продукта и количество продуктов 20 и 30. Я хочу напечатать 50 в таблице, но это напечатает 20 30. Вот так. Как я могу сложить эти числа.
models.py
class Products(db.Model):
__searchable__ = ["product_name"]
id = db.Column(db.Integer, primary_key=True)
product_name = db.Column(db.String(20))
product_amount = db.Column(db.Integer)
product_price = db.Column(db.Float)
product_date = db.Column(db.DateTime, default=datetime.utcnow)
category_id = db.Column(db.Integer, db.ForeignKey('category.id'))
category = db.relationship('Category', backref="category", lazy=True)
def __repr__(self):
return f"Products('{self.product_name}' '{self.product_amount}' '{self.product_price}' '{self.category}')"
class Category(db.Model):
__searchable__ = ["category_name"]
id = db.Column(db.Integer, primary_key=True)
category_name = db.Column(db.String(80))
def __repr__(self):
return f"{self.category_name}"
категории
@app.route("/categories", methods=["GET", "POST"])
@login_required
def categories():
page = request.args.get("page", 1, type=int)
categories = Category.query.paginate(page=page, per_page=5)
products = Products.query.all()
if request.method == "POST":
category_name = request.form["category_name"]
category = Category(category_name=category_name)
db.session.add(category)
db.session.commit()
return redirect(url_for("categories"))
return render_template("categories.html", categories=categories, products=products)
таблица
<table class="table table-striped mt-4">
<thead>
<tr>
<th scope="col">Category Name</th>
<th scope="col">Total Product</th>
<th scope="col">Total Price</th>
<th scope="col">Update Category</th>
<th scope="col">Delete Category</th>
</tr>
</thead>
<tbody>
{% for category in categories.items %}
<tr>
<td>{{ category.category_name }}</td>
<td>
{% for product in products %}
{% if product.category_id == category.id %}
{{ product.product_amount }}
{% endif %}
{% endfor %}
</td>
<td>Price Counter</td>
<th><a href="/update_category/{{ category.id }}" class="btn btn-primary ">Update</a></th>
<th><a href="/delete_category/{{ category.id }}" class="btn btn-danger">Delete</a></th>
</tr>
{% endfor %}