Lehrer können Lerngruppen anlegen:
Code: Alles auswählen
def neue_gruppe(req):
if User.objects.filter(pk=req.user.id, groups__name='Lehrer').exists():
gruppe_form = Gruppe_Neu_Form()
if req.method == 'POST':
gruppe_form = Gruppe_Neu_Form(req.POST)
if gruppe_form.is_valid():
gruppen = Lerngruppe.objects.filter(lehrer=req.user).order_by('name')
try:
gruppe = Lerngruppe.objects.create()
gruppe.name = gruppe_form.cleaned_data['name']
gruppe.lehrer = req.user
gruppe.save()
except:
gruppe_form = Gruppe_Neu_Form(req.POST)
return render(req, 'lehrer/neue_gruppe.html', context={'gruppe': gruppe_form, 'titel': "Ein Gruppe mit diesem Name existiert schon!",})
return render(req, 'lehrer/meine_gruppen.html', context={'gruppen': gruppen, 'titel': "neue Lerngruppe wurde angelegt"})
return render(req, 'lehrer/neue_gruppe.html', context={'gruppe': gruppe_form, 'titel': "neue Lerngruppe anlegen",})
else:
return HttpResponse("Zugriff verweigert")
Code: Alles auswählen
class Lerngruppe(models.Model):
lehrer = models.ForeignKey(User, null=True, on_delete=models.CASCADE, related_name='gruppe')
name = models.CharField(max_length=15)
class Meta:
verbose_name_plural = 'Lerngruppen'
unique_together = ['lehrer', 'name']
def __str__(self):
return f"{self.lehrer.profil.nachname}, {self.name}"