tickets: Add a (virtual) Booking.price property.
authorMatthijs Kooijman <matthijs@stdin.nl>
Tue, 19 Oct 2010 13:02:45 +0000 (15:02 +0200)
committerMatthijs Kooijman <matthijs@stdin.nl>
Tue, 19 Oct 2010 13:02:45 +0000 (15:02 +0200)
tickets/models.py

index f022e6f771afc3068c7396cb3d0b08d2aa9f73b6..5c56b0aa82b0d99f2ef88e79215c77f43270e613 100644 (file)
@@ -1,3 +1,5 @@
+# coding=utf-8
+
 from django.db import models
 
 # Create your models here.
@@ -9,6 +11,8 @@ SHOW_CHOICES = [ ("vrijdag", "vrijdag 17 december, 20:00")
 
 TICKETS_CHOICES = [ (n, n) for n in range(1, 6)]
 
+TICKET_PRICE=10
+
 class Booking(models.Model):
     created = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Datum")
     name = models.CharField(max_length=100, verbose_name="Naam")
@@ -18,3 +22,7 @@ class Booking(models.Model):
     tickets = models.IntegerField(choices=TICKETS_CHOICES, verbose_name="Aantal kaarten")
     show = models.CharField(max_length=50, choices=SHOW_CHOICES, verbose_name="Voorstelling")
     payment = models.DateTimeField(blank=True, null=True, verbose_name="Betaling vewerkt op")
+
+    def _get_price(self):
+        return self.tickets * TICKET_PRICE
+    price = property(_get_price)