mirror of
https://github.com/Rushilwiz/SkoolOS.git
synced 2025-04-16 02:10:19 -04:00
Fixed some fields and started more work on forms
This commit is contained in:
parent
f825713f2f
commit
dab0534592
|
@ -61,7 +61,7 @@ class Class(models.Model):
|
||||||
return super(Class, self).save(*args, **kwargs)
|
return super(Class, self).save(*args, **kwargs)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f"{self.user.first_name} {self.user.last_name} ({self.user.username})"
|
return f"{self.name}"
|
||||||
|
|
||||||
class Teacher(models.Model):
|
class Teacher(models.Model):
|
||||||
user = models.OneToOneField(User, on_delete=models.CASCADE)
|
user = models.OneToOneField(User, on_delete=models.CASCADE)
|
||||||
|
@ -70,7 +70,7 @@ class Teacher(models.Model):
|
||||||
ion_user=models.CharField(primary_key=True, max_length=100)
|
ion_user=models.CharField(primary_key=True, max_length=100)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f"{self.user.username}'s Profile"
|
return f"{self.user.first_name} {self.user.last_name} ({self.user.username})"
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs):
|
||||||
super(Teacher, self).save(*args, **kwargs)
|
super(Teacher, self).save(*args, **kwargs)
|
||||||
|
|
|
@ -54,23 +54,16 @@ class ClassCreationForm (forms.ModelForm):
|
||||||
initial['unconfirmed'] = [t.pk for t in kwargs['instance'].unconfirmed.all()]
|
initial['unconfirmed'] = [t.pk for t in kwargs['instance'].unconfirmed.all()]
|
||||||
|
|
||||||
# Overriding save allows us to process the value of 'unconfirmed' field
|
# Overriding save allows us to process the value of 'unconfirmed' field
|
||||||
def save(self, commit=True):
|
def save(self, username=""):
|
||||||
# Get the unsave Pizza instance
|
cleaned_data = self.cleaned_data
|
||||||
instance = forms.ModelForm.save(self, False)
|
print(self)
|
||||||
|
|
||||||
# Prepare a 'save_m2m' method for the form,
|
# Get the unsave Class instance
|
||||||
old_save_m2m = self.save_m2m
|
instance = forms.ModelForm.save(self)
|
||||||
def save_m2m():
|
instance.unconfirmed.clear()
|
||||||
old_save_m2m()
|
instance.unconfirmed.add(*cleaned_data['unconfirmed'])
|
||||||
# This is where we actually link the pizza with toppings
|
instance.name = cleaned_data['subject'] + str(cleaned_data['period']) + "_" + username
|
||||||
instance.topping_set.clear()
|
print("Class name: " + instance.name)
|
||||||
instance.topping_set.add(*self.cleaned_data['unconfirmed'])
|
|
||||||
self.save_m2m = save_m2m
|
|
||||||
|
|
||||||
# Do we need to save all changes now?
|
|
||||||
if commit:
|
|
||||||
instance.save()
|
|
||||||
self.save_m2m()
|
|
||||||
|
|
||||||
return instance
|
return instance
|
||||||
|
|
||||||
|
|
|
@ -139,14 +139,13 @@ def createClassHelper(request):
|
||||||
teacher = request.user.teacher
|
teacher = request.user.teacher
|
||||||
|
|
||||||
if request.method == "POST":
|
if request.method == "POST":
|
||||||
userForm = UserUpdateForm(request.POST, instance=request.user)
|
classForm = ClassCreationForm(request.POST)
|
||||||
profileForm = TeacherUpdateForm(request.POST,
|
if classForm.is_valid():
|
||||||
instance=request.user.teacher)
|
cleaned_data = classForm.clean()
|
||||||
if userForm.is_valid() and profileForm.is_valid():
|
print(cleaned_data)
|
||||||
userForm.save()
|
classForm.save(username=teacher.user.username)
|
||||||
profileForm.save()
|
messages.success(request, cleaned_data['subject'].capitalize() + " has been created!")
|
||||||
messages.success(request, "Your account has been updated!")
|
return redirect('home')
|
||||||
return redirect('profile')
|
|
||||||
else:
|
else:
|
||||||
classForm = ClassCreationForm()
|
classForm = ClassCreationForm()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user