Hi i'm Kevin and i'm new in python and django

i want if one between student suggestion and staff suggestion's status == 
"approved"
that data to be sent in appointment model

my models are:

statuses=[
    ('accepted','Approve'),
    ('denied','deny'),
    ('canceled','cancel'),

]

class studentsuggestion(models.Model):
    student = models.ForeignKey(student, default=None, on_delete=models.CASCADE)
    lecture = models.ForeignKey(staffs, on_delete=models.CASCADE)
    suggestion_date = models.DateField(default=None,blank=True)
    suggestion_hour = models.TimeField(default=None,null=True, blank=True)
    student_reason = models.TextField(max_length=1000, blank=True)
    status = models.CharField(max_length=9, default=None, choices=statuses, 
null=True, blank=True)
    suggested_date = models.DateTimeField(auto_now_add=True)

    objects = studentsuggstmanager()
    def __str__(self):
        return self.student.user.username
    def get_absolute_url(self):
        return reverse('suggestion_detail', kwargs = {'pk':self.pk})

class staffsuggestion(models.Model):
    auhtor = models.ForeignKey(staffs, related_name='stasuggestion', 
default=None, on_delete=models.CASCADE)
    studentsuggestion = models.ForeignKey(studentsuggestion, default=None, 
on_delete=models.CASCADE)
    suggestion_date = models.DateField(default=None,blank=True)
    suggestion_hour = models.TimeField(default=None,null=True, blank=True)
    end_time = models.TimeField(default=None,null=True, blank=True)
    staff_reason = models.TextField(max_length=1000, blank=True)
    status = models.CharField(max_length=9, default=None, choices=statuses, 
null=True, blank=True)
    suggested_date = models.DateTimeField(auto_now_add=True) 
    def __str__(self):
        return self.studentsuggestion

class appointment(models.Model):
    staffsuggestion = models.ForeignKey(staffsuggestion, default=None, 
null=True, on_delete=models.CASCADE)
    studentsuggestion = models.ForeignKey(studentsuggestion, 
default=None,null=True, on_delete=models.CASCADE)
    suggestion_date = models.DateField(default=None,blank=True)
    suggestion_hour = models.TimeField(default=None,null=True, blank=True)
    end_time = models.TimeField(default=None,null=True, blank=True)
    reason = models.TextField(max_length=1000)
    status = models.CharField(max_length=9, default=None, null=True, 
choices=statuses, blank=True)
    requested_date = models.DateTimeField(auto_now_add=True)
    def __str__(self):
        if staffsuggestion is not None:
            return self.staffsuggestion
        else:
            return self.studentsuggestion

my views.py

class studentsuggestionreact(UpdateView):
    model = studentsuggestion
    template_name = 'auth/mine/reaction.html'
    fields = ['status']
    def form_valid(self, form):
        self.object = form.save(commit = False)
        if self.object.status == 'approve':
            studentsuggestion = self.object.student
            suggestion_date = self.object.suggestion_date
            suggestion_hour = self.object.suggestion_hour
            reason = self.object.student_reason
            status = self.object.status
            get_values = appointment.objects.get_or_create( 
studentsuggestion=studentsuggestion,
                                        suggestion_date=suggestion_date, 
suggestion_hour=suggestion_hour, reason=reason,
                                        status=status).save()
            get_values.save()
            self.object.save()
            return redirect("suggestion_list")
            
        elif self.object.status == 'canceled':
            self.object.save()
            return redirect("suggestion_list")
        
        elif self.object.status == 'denied':
            self.object.save()
            return redirect("suggestion_list")

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/295dc8e8-8393-46f1-b221-ea45f4fea32f%40googlegroups.com.

Reply via email to