diff --git a/django/didgeridoo/webshop/models.py b/django/didgeridoo/webshop/models.py index a17cb65..9551f84 100644 --- a/django/didgeridoo/webshop/models.py +++ b/django/didgeridoo/webshop/models.py @@ -112,6 +112,15 @@ class CartPosition(models.Model): article = models.ForeignKey(Article, on_delete=models.CASCADE) amount = models.FloatField(max_length=5) cart = models.ForeignKey(ShoppingCart, on_delete=models.CASCADE) + position_price = models.DecimalField(max_digits=19, + decimal_places=2, + validators=[MinValueValidator( + Decimal('0.00'))], + null=True) + + def calculate_position_price(self): + decimal_amount = Decimal.from_float(self.amount) + self.position_price = decimal_amount * self.article.price_in_chf class City(models.Model): diff --git a/django/didgeridoo/webshop/templates/webshop/cart.html b/django/didgeridoo/webshop/templates/webshop/cart.html index 9b6c8a7..047d6e8 100644 --- a/django/didgeridoo/webshop/templates/webshop/cart.html +++ b/django/didgeridoo/webshop/templates/webshop/cart.html @@ -1,4 +1,5 @@ {% extends "webshop/base.html" %} +{% load cart_filters %} {% block section_title %}