All pastes #1490979 Raw Edit

Unnamed

public text v1 · immutable
#1490979 ·published 2009-07-10 18:56 UTC
rendered paste body
from django.db import models
from django.contrib import admin

class Room(models.Model):
    name = models.CharField(max_length=30)

    def __unicode__(self):
        return self.name

admin.site.register(Room)

# A bed is one of several types of beds
class Bed_type(models.Model):
    type = models.CharField(max_length=30)

    def __unicode__(self):
        return self.type

admin.site.register(Bed_type)

class Bed(models.Model):
    room = models.ForeignKey(Room)
    type = models.ForeignKey(Bed_type)
    number = models.IntegerField()

    def __unicode__(self):
        return str(self.number)


class BedAdmin(admin.ModelAdmin):
    list_filter = ('type', 'room', )

admin.site.register(Bed, BedAdmin)

class Guest(models.Model):
    first_name = models.CharField("Fornavn", max_length=30) 
    last_name = models.CharField("Etternavn", max_length=30) 

    def __unicode__(self):
        return self.first_name + ' ' + self.last_name

admin.site.register(Guest)

# A booking can be one or more days, registered to a guest and with one or more beds
class Booking(models.Model):
    bed = models.ForeignKey(Bed)
    guest = models.ForeignKey(Guest)
    start_date = models.DateField("Fra dato")
    end_date = models.DateField("Til dato")
    paid = models.BooleanField("Betalt")

    def __unicode__(self):
        return str(self.guest)
    
class BookingAdmin(admin.ModelAdmin):
    list_display = ('guest', 'bed__room', )
    list_filter = ('bed', 'guest', 'paid', )

admin.site.register(Booking, BookingAdmin)