Merhabalar, Flask-SQLAlchemy ile ufak çapta proje geliştiriyorum. Bir yerde takıldım. Relationshipli bir db oluşturdum. Yapmak istediğim o kategoride bulunan ürünlerin sayısını ve o kategorideki ürünlerin toplam fiyatını yazdırmak istiyorum bunu nasıl yapabilirim.


models.py

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_login import LoginManager, UserMixin
from flask_msearch import Search
from datetime import datetime

app = Flask(__name__)
app.config["SECRET_KEY"] = "secret"
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'
app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False
db = SQLAlchemy(app)
search = Search()
search.init_app(app)
login_manager = LoginManager()
login_manager.init_app(app)
login_manager.login_view = 'login'


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")

def __repr__(self):
return f"Products('{self.product_name}' '{self.product_amount}' '{self.product_price}' '{self.category}')"


class Category(db.Model):
id = db.Column(db.Integer, primary_key=True)
category_name = db.Column(db.String(80))

def __repr__(self):
return f"{self.category_name}"




app.py

@app.route("/categories", methods=["GET", "POST"])
@login_required
def categories():
categories = Category.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)



Tablo












{% for category in categories %}






{% endfor %}


Category Name Total Product Update Category Delete Category
{{ category.category_name }} Product Counter in Specific Category Update Delete



Yukarıda "Product Counter in Specific Category" yazan yere örneğin ben bir ürün eklediğimde:
Ürün adı : telefon-1
Ürün adedi: 5
Ürün fiyatı : 150TL
Kategori: Telefon
Ürün adı : telefon-2
Ürün adedi: 3
Ürün fiyatı : 100TL
Kategori: Telefon

gibi oldugunda tabloda telefon kategorisi satırında mesela fiyat yerinde 250TL ürün adedinde 8 yazacak

Bunu nasıl yapabilirim yardımcı olur musunuz?