diff --git a/django/didgeridoo/webshop/models.py b/django/didgeridoo/webshop/models.py index 6c87815..b2bfa91 100644 --- a/django/didgeridoo/webshop/models.py +++ b/django/didgeridoo/webshop/models.py @@ -94,11 +94,21 @@ class Picture(models.Model): class Order(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE) - article = models.ManyToManyField(Article) - order_status = models.ForeignKey(OrderStatus) + article = models.ManyToManyField(Article, through='OrderPosition') + status = models.ForeignKey(OrderStatus) date = models.DateTimeField(default=datetime.datetime.now()) +class OrderPosition(models.Model): + article = models.ForeignKey(Article, on_delete=models.CASCADE) + order = models.ForeignKey(Order, on_delete=models.CASCADE) + amount = models.FloatField(max_length=5) + price_in_chf = models.DecimalField(max_digits=19, + decimal_places=2, + validators=[MinValueValidator( + Decimal('0.00'))]) + + class ShoppingCart(models.Model): name = models.CharField(max_length=200) user = models.ForeignKey(User, on_delete=models.CASCADE)