Preis-Eingabe auf europäisches Komma-Format normalisiert
- Neuer Artikel: Textfeld mit Placeholder 4,50 statt Dezimalpunkt - Artikel bearbeiten: Preise mit Komma anzeigen und akzeptieren - Backend: Komma vor float()-Konvertierung in Punkt umwandeln Made-with: Cursor
This commit is contained in:
12
app.py
12
app.py
@@ -221,7 +221,11 @@ def admin(instance_id):
|
|||||||
|
|
||||||
if action == "add_product":
|
if action == "add_product":
|
||||||
name = request.form.get('add_name', '').strip()
|
name = request.form.get('add_name', '').strip()
|
||||||
price = request.form.get('add_price', type=float)
|
price_str = request.form.get('add_price', '').replace(',', '.').strip()
|
||||||
|
try:
|
||||||
|
price = float(price_str) if price_str else None
|
||||||
|
except ValueError:
|
||||||
|
price = None
|
||||||
icon = request.form.get('add_icon', '🛒').strip() or '🛒'
|
icon = request.form.get('add_icon', '🛒').strip() or '🛒'
|
||||||
color = request.form.get('add_color', 'btn-primary')
|
color = request.form.get('add_color', 'btn-primary')
|
||||||
if name and price is not None:
|
if name and price is not None:
|
||||||
@@ -244,7 +248,11 @@ def admin(instance_id):
|
|||||||
for row in products_rows:
|
for row in products_rows:
|
||||||
pos = row['position']
|
pos = row['position']
|
||||||
name = request.form.get(f'name_{pos}')
|
name = request.form.get(f'name_{pos}')
|
||||||
price = request.form.get(f'price_{pos}', type=float)
|
price_str = request.form.get(f'price_{pos}', '').replace(',', '.').strip()
|
||||||
|
try:
|
||||||
|
price = float(price_str) if price_str else None
|
||||||
|
except ValueError:
|
||||||
|
price = None
|
||||||
icon = request.form.get(f'icon_{pos}')
|
icon = request.form.get(f'icon_{pos}')
|
||||||
color = request.form.get(f'color_{pos}')
|
color = request.form.get(f'color_{pos}')
|
||||||
if name is not None and price is not None:
|
if name is not None and price is not None:
|
||||||
|
|||||||
@@ -45,8 +45,8 @@
|
|||||||
<td class="align-middle">{{ pos }}</td>
|
<td class="align-middle">{{ pos }}</td>
|
||||||
<td><input type="text" class="form-control" name="name_{{ pos }}" value="{{ prod['name'] }}"
|
<td><input type="text" class="form-control" name="name_{{ pos }}" value="{{ prod['name'] }}"
|
||||||
required></td>
|
required></td>
|
||||||
<td><input type="number" step="0.01" class="form-control" name="price_{{ pos }}"
|
<td><input type="text" inputmode="decimal" class="form-control" name="price_{{ pos }}"
|
||||||
value="{{ prod['price'] }}" required></td>
|
value="{{ '{:.2f}'.format(prod['price']).replace('.', ',') }}" required></td>
|
||||||
<td><input type="text" class="form-control" name="icon_{{ pos }}" value="{{ prod['icon'] }}"
|
<td><input type="text" class="form-control" name="icon_{{ pos }}" value="{{ prod['icon'] }}"
|
||||||
required></td>
|
required></td>
|
||||||
<td>
|
<td>
|
||||||
@@ -100,8 +100,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-2">
|
<div class="form-group col-md-2">
|
||||||
<label for="add_price">Preis (€)</label>
|
<label for="add_price">Preis (€)</label>
|
||||||
<input type="number" step="0.01" class="form-control" name="add_price" id="add_price" required
|
<input type="text" inputmode="decimal" class="form-control" name="add_price" id="add_price" required
|
||||||
placeholder="4.50">
|
placeholder="4,50">
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-1">
|
<div class="form-group col-md-1">
|
||||||
<label for="add_icon">Icon</label>
|
<label for="add_icon">Icon</label>
|
||||||
|
|||||||
Reference in New Issue
Block a user