nullable Referenzen, Textrepräsentation

This commit is contained in:
Tom Irgang 2023-04-16 20:13:37 +02:00
parent 32db5c8544
commit 7a66820a24
3 changed files with 60 additions and 4 deletions

View file

@ -1,3 +1,10 @@
from django.contrib import admin
# Register your models here.
from .models import Organisator, Cafe, Frage, Gerät, Reparateur, Termin
admin.site.register(Organisator)
admin.site.register(Cafe)
admin.site.register(Frage)
admin.site.register(Gerät)
admin.site.register(Reparateur)
admin.site.register(Termin)

View file

@ -0,0 +1,29 @@
# Generated by Django 4.2 on 2023-04-16 18:12
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('repapp', '0002_alter_termin_cafeid_alter_termin_gerätid_and_more'),
]
operations = [
migrations.AlterField(
model_name='frage',
name='organisatorid',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='repapp.organisator'),
),
migrations.AlterField(
model_name='frage',
name='reparateurid',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='repapp.reparateur'),
),
migrations.AlterField(
model_name='termin',
name='gerätid',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='repapp.gerät'),
),
]

View file

@ -5,16 +5,25 @@ class Cafe(models.Model):
ort = models.CharField(max_length=200)
datum = models.DateField()
def __str__(self):
return f'Repair-Café am {self.datum} (Ort: {self.ort})'
class Reparateur(models.Model):
name = models.CharField(max_length=200)
mail = models.CharField(max_length=200)
def __str__(self):
return f'Reparatuer {self.name} (eMail: {self.mail})'
class Organisator(models.Model):
name = models.CharField(max_length=200)
mail = models.CharField(max_length=200)
def __str__(self):
return f'Organisator {self.name} (eMail: {self.mail})'
class Gerät(models.Model):
identifier = models.CharField(max_length=200)
@ -24,19 +33,30 @@ class Gerät(models.Model):
fehler = models.TextField()
folgetermin = models.BooleanField()
def __str__(self):
return f'Gerät {self.gerät} von {self.besitzer} (eMail: {self.mail})'
class Termin(models.Model):
uhrzeit = models.TimeField()
bestätigt = models.BooleanField()
cafeid = models.ForeignKey(Cafe, on_delete=models.CASCADE)
reparateurid = models.ForeignKey(Reparateur, on_delete=models.CASCADE)
gerätid = models.ForeignKey(Gerät, on_delete=models.CASCADE)
gerätid = models.ForeignKey(Gerät, on_delete=models.CASCADE, null=True)
def __str__(self):
return f'Termin {self.cafeid.datum} {self.uhrzeit} für Gerät {self.gerätid.gerät} von {self.gerätid.besitzer}'
class Frage(models.Model):
frage = models.TextField()
antwort = models.TextField()
datum = models.DateField()
organisatorid = models.ForeignKey(Organisator, on_delete=models.CASCADE)
reparateurid = models.ForeignKey(Reparateur, on_delete=models.CASCADE)
organisatorid = models.ForeignKey(
Organisator, on_delete=models.CASCADE, null=True)
reparateurid = models.ForeignKey(
Reparateur, on_delete=models.CASCADE, null=True)
gerätid = models.ForeignKey(Gerät, on_delete=models.CASCADE)
def __str__(self):
return f'Frage vom {self.datum} zum Gerät {self.gerätid.gerät}'