Refactor food item nutrition field names for consistency

Standardized field names for nutritional values in FoodItem model and throughout the codebase, changing 'fats_100g' to 'fat_100', 'saturated_fats_100g' to 'saturated_fat_100', and similar updates for other fields. Updated all references in models, templates, routes, and seed data to match the new naming convention for improved clarity and consistency.
This commit is contained in:
2025-06-29 16:36:05 +02:00
parent 0ec930f86d
commit e00bfee948
7 changed files with 62 additions and 62 deletions

4
app.py
View File

@@ -123,9 +123,9 @@ def add_food_item():
energy=form.energy.data,
protein=form.protein.data,
carbs=form.carbs.data,
fats=form.fat.data,
fat=form.fat.data,
barcode=form.barcode.data,
saturated_fats=form.saturated_fat.data,
saturated_fat=form.saturated_fat.data,
sugar=form.sugar.data,
)
)

View File

@@ -13,8 +13,8 @@ Food Nutritional Info
<tr>
<th>Name</th>
<th>Energy (kcal)</th>
<th>Fats (g)</th>
<th>Saturated Fats (g)</th>
<th>fat (g)</th>
<th>Saturated fat (g)</th>
<th>Sugars (g)</th>
<th>Carbs (g)</th>
<th>Protein (g)</th>
@@ -25,12 +25,12 @@ Food Nutritional Info
{% for food in items %}
<tr>
<td class="bg-body-tertiary">{{ food.name }}</td>
<td class="bg-body-tertiary">{{ food.energy_100g }}</td>
<td class="bg-body-tertiary">{{ food.fats_100g }}</td>
<td class="bg-body-tertiary">{{ food.saturated_fats_100g }}</td>
<td class="bg-body-tertiary">{{ food.sugar_100g }}</td>
<td class="bg-body-tertiary">{{ food.carbs_100g }}</td>
<td class="bg-body-tertiary">{{ food.protein_100g }}</td>
<td class="bg-body-tertiary">{{ food.energy_100 }}</td>
<td class="bg-body-tertiary">{{ food.fat_100 }}</td>
<td class="bg-body-tertiary">{{ food.saturated_fat_100 }}</td>
<td class="bg-body-tertiary">{{ food.sugar_100 }}</td>
<td class="bg-body-tertiary">{{ food.carbs_100 }}</td>
<td class="bg-body-tertiary">{{ food.protein_100 }}</td>
<td class="bg-body-tertiary">
<form method="POST" action="{{ url_for('admin.delete_food', id=food.id) }}"
onsubmit="return confirm('Are you sure you want to delete this item?');">

View File

@@ -9,30 +9,30 @@
<div class="card-body">
<dl class="row">
<dt class="col-sm-5">Energy per 100g</dt>
<dd class="col-sm-7">{{ item.energy_100g }} kcal</dd>
<dd class="col-sm-7">{{ item.energy_100 }} kcal</dd>
<dt class="col-sm-5">Protein per 100g</dt>
<dd class="col-sm-7">{{ "%.1f"|format(item.protein_100g) }} g</dd>
<dd class="col-sm-7">{{ "%.1f"|format(item.protein_100) }} g</dd>
<dt class="col-sm-5">Carbohydrates per 100g</dt>
<dd class="col-sm-7">{{ "%.1f"|format(item.carbs_100g) }} g</dd>
<dd class="col-sm-7">{{ "%.1f"|format(item.carbs_100) }} g</dd>
<dt class="col-sm-5">Sugar per 100g</dt>
<dd class="col-sm-7">
{% if item.sugar_100g is not none %}
{{ "%.1f"|format(item.sugar_100g) }} g
{% if item.sugar_100 is not none %}
{{ "%.1f"|format(item.sugar_100) }} g
{% else %}
<span class="text-muted">N/A</span>
{% endif %}
</dd>
<dt class="col-sm-5">Fats per 100g</dt>
<dd class="col-sm-7">{{ "%.1f"|format(item.fats_100g) }} g</dd>
<dt class="col-sm-5">fat per 100g</dt>
<dd class="col-sm-7">{{ "%.1f"|format(item.fat_100) }} g</dd>
<dt class="col-sm-5">Saturated fats per 100g</dt>
<dt class="col-sm-5">Saturated fat per 100g</dt>
<dd class="col-sm-7">
{% if item.saturated_fats_100g is not none %}
{{ "%.1f"|format(item.saturated_fats_100g) }} g
{% if item.saturated_fat_100 is not none %}
{{ "%.1f"|format(item.saturated_fat_100) }} g
{% else %}
<span class="text-muted">N/A</span>
{% endif %}

View File

@@ -56,12 +56,12 @@ def edit_food_item(barcode: int):
return redirect(url_for("user.dashboard"))
form.barcode.data = item.barcode
form.name.data = item.name
form.energy.data = item.energy_100g
form.protein.data = item.protein_100g
form.carbs.data = item.carbs_100g
form.sugar.data = item.sugar_100g
form.fat.data = item.fats_100g
form.saturated_fat.data = item.saturated_fats_100g
form.energy.data = item.energy_100
form.protein.data = item.protein_100
form.carbs.data = item.carbs_100
form.sugar.data = item.sugar_100
form.fat.data = item.fat_100
form.saturated_fat.data = item.saturated_fat_100
return render_template("edit_food_item.html", form=form)
else:
return redirect(url_for("user.dashboard"))

View File

@@ -13,8 +13,8 @@ Food Nutritional Info
<tr>
<th>Name</th>
<th>Energy (kcal)</th>
<th>Fats (g)</th>
<th>Saturated Fats (g)</th>
<th>fat (g)</th>
<th>Saturated fat (g)</th>
<th>Sugars (g)</th>
<th>Carbs (g)</th>
<th>Protein (g)</th>
@@ -25,12 +25,12 @@ Food Nutritional Info
{% for food in items %}
<tr>
<td class="bg-body-tertiary">{{ food.name }}</td>
<td class="bg-body-tertiary">{{ food.energy_100g }}</td>
<td class="bg-body-tertiary">{{ food.fats_100g }}</td>
<td class="bg-body-tertiary">{{ food.saturated_fats_100g }}</td>
<td class="bg-body-tertiary">{{ food.sugar_100g }}</td>
<td class="bg-body-tertiary">{{ food.carbs_100g }}</td>
<td class="bg-body-tertiary">{{ food.protein_100g }}</td>
<td class="bg-body-tertiary">{{ food.energy_100 }}</td>
<td class="bg-body-tertiary">{{ food.fat_100 }}</td>
<td class="bg-body-tertiary">{{ food.saturated_fat_100 }}</td>
<td class="bg-body-tertiary">{{ food.sugar_100 }}</td>
<td class="bg-body-tertiary">{{ food.carbs_100 }}</td>
<td class="bg-body-tertiary">{{ food.protein_100 }}</td>
<td class="bg-body-tertiary">
<div class="d-flex gap-1">
<form method="GET" action="{{ url_for('user.edit_food_item', barcode=food.barcode) }}">

View File

@@ -43,12 +43,12 @@ class FoodItem(db.Model):
owner_id = db.Column(db.Integer, db.ForeignKey("user.id"), nullable=False)
name = db.Column(db.String(150), nullable=False)
energy_100g = db.Column(db.Integer, nullable=False)
protein_100g = db.Column(db.Float, nullable=False)
carbs_100g = db.Column(db.Float, nullable=False)
sugar_100g = db.Column(db.Float)
fats_100g = db.Column(db.Float, nullable=False)
saturated_fats_100g = db.Column(db.Float)
energy_100 = db.Column(db.Integer, nullable=False)
protein_100 = db.Column(db.Float, nullable=False)
carbs_100 = db.Column(db.Float, nullable=False)
sugar_100 = db.Column(db.Float)
fat_100 = db.Column(db.Float, nullable=False)
saturated_fat_100 = db.Column(db.Float)
__table_args__ = (
db.UniqueConstraint("barcode", "owner_id", name="barcode_owner_key"),
@@ -61,29 +61,29 @@ class FoodItem(db.Model):
energy: int,
protein: float,
carbs: float,
fats: float,
fat: float,
barcode: int,
sugar: Optional[float] = None,
saturated_fats: Optional[float] = None,
saturated_fat: Optional[float] = None,
):
self.name = name
self.owner_id = owner_id
self.energy_100g = energy
self.protein_100g = protein
self.carbs_100g = carbs
self.sugar_100g = sugar
self.fats_100g = fats
self.saturated_fats_100g = saturated_fats
self.energy_100 = energy
self.protein_100 = protein
self.carbs_100 = carbs
self.sugar_100 = sugar
self.fat_100 = fat
self.saturated_fat_100 = saturated_fat
self.barcode = barcode
def updateFromForm(self, form: FoodItemForm):
self.name = form.name.data
self.energy_100g = form.energy.data
self.protein_100g = form.protein.data
self.carbs_100g = form.carbs.data
self.sugar_100g = form.sugar.data
self.fats_100g = form.fat.data
self.saturated_fats_100g = form.saturated_fat.data
self.energy_100 = form.energy.data
self.protein_100 = form.protein.data
self.carbs_100 = form.carbs.data
self.sugar_100 = form.sugar.data
self.fat_100 = form.fat.data
self.saturated_fat_100 = form.saturated_fat.data
def to_dict(self):
return {
@@ -91,10 +91,10 @@ class FoodItem(db.Model):
"barcode": self.barcode,
"name": self.name,
"owner_id": self.owner_id,
"energy_100g": self.energy_100g,
"protein_100g": self.protein_100g,
"carbs_100g": self.carbs_100g,
"sugar_100g": self.sugar_100g,
"fats_100g": self.fats_100g,
"saturated_fats_100g": self.saturated_fats_100g,
"energy_100": self.energy_100,
"protein_100": self.protein_100,
"carbs_100": self.carbs_100,
"sugar_100": self.sugar_100,
"fat_100": self.fat_100,
"saturated_fat_100": self.saturated_fat_100,
}

View File

@@ -12,10 +12,10 @@ with app.app_context():
name="AH Matcha cookie",
owner_id=1,
energy=430,
fats=19,
fat=19,
carbs=59,
protein=5.5,
saturated_fats=10,
saturated_fat=10,
sugar=35,
barcode=2278012003502,
)