from django.db import models class Student(models.Model): matnr = models.IntegerField( unique=True, help_text='MatrNr. wird extern vergeben' ) name = models.CharField(max_length=64) hoert = models.ManyToManyField('Vorlesung', blank=True) GECHLECHT_CHOICES = ( ('h', 'Herr'), ('f', 'Frau'), ('d', 'Divers'), ) geschlecht = models.CharField(max_length=1, null=True, choices=GECHLECHT_CHOICES) def __str__(self): return "%s [%s]" % (self.name, self.matnr) class Meta: verbose_name = 'Student' verbose_name_plural = 'Studenten' ordering = ('name', 'matnr',) class Professor(models.Model): persnr = models.IntegerField(unique=True) name = models.CharField(max_length=64) def __str__(self): return "%s [%s]" % (self.name, self.persnr) # def get_absolute_url(self): # viewname = 'show_prof' # return reverse(viewname, args=(self.id,) ) class Meta: verbose_name = 'Professor' verbose_name_plural = 'Professoren' ordering = ('name', 'persnr',) class Vorlesung(models.Model): vorlnr = models.IntegerField(unique=True) titel = models.CharField(max_length=128) dozent = models.ForeignKey( Professor, null = True, on_delete = models.SET_NULL, ) def __str__(self): return "%s [%s]" % (self.titel, self.vorlnr) # def get_absolute_url(self): # viewname = 'show_vl' # return reverse(viewname, args=(self.id,) ) class Meta: verbose_name = 'Vorlesung' verbose_name_plural = 'Vorlesungen' ordering = ('titel', 'vorlnr',)