Как я могу применить логику, если пользователь присутствует в модели заказа Frontend?

Я просто хочу, чтобы если пользователь заказал что-то, то он мог оценить заказ, в противном случае он не сможет и покажет сообщение об ошибке "Вы не приобрели никакой сайт". Я применял логику 5/6 раз разными способами, но не смог решить проблему.

Oeder Model:

class Frontend_Order(models.Model):
    USer = models.ForeignKey(User,default=None,on_delete=models.CASCADE,related_name='user_frontend_order')
    Service_Type = models.CharField(max_length=250, null=True)
    Price = models.CharField(max_length=250, null=True)
    Number_of_Section = models.CharField(max_length=250, null=True)
    Per_section_Price = models.CharField(max_length=250, null=True)
    Website_Functionality = models.CharField(max_length=50, null=True)
    Email = models.EmailField(max_length=50, null=True)
    files = models.FileField(upload_to="0_frontend_files/", null=True, blank=True)
    created_date = models.DateTimeField(auto_now_add=True, null=True)

    order_message = models.ForeignKey(Message_Manu,on_delete=models.CASCADE, null=True, related_name="message")

    def __str__(self):
        return str(self.pk)+ str(".") + str(self.USer)

Рейтинговая модель:

class Frontend_Rating(models.Model):
    USer = models.OneToOneField(User,default=None,on_delete=models.CASCADE, related_name="frontend_rating")
    Rating = models.IntegerField(null=True)
    Feedback = models.TextField(max_length=250, null=True)
    created_date = models.DateTimeField(auto_now_add=True, null=True)

    def __str__(self):
        return str(self.pk)+ str(".") + str(self.USer) + str("(") + str(self.Rating) + str("stars") +str(")")

Просмотр заказа:

def frontend_order_rating(request):
    if request.user.is_authenticated:
 
        if request.method == "POST":
            frontend_rating = int(request.POST.get('frontend_ratting'))
            frontend_feedback = request.POST.get('frontend_feedback')
            
            try:
                Frontend_Rating.objects.create(
                    USer = request.user,
                    Rating = int(frontend_rating),
                    Feedback = frontend_feedback
                    )

                messages.success(request,f"{request.user.first_name}, Thank You for your feedback!")
                
                return redirect("/", userz = request.user)
            except:
                messages.error(request,f"{request.user.first_name}, Sorry! You've already given a feedback!")
                return redirect("/", userz = request.user)

    else:
        messages.error(request,"Please login or create an account.")
   
    return redirect("/")

сначала проверьте, делал ли пользователь когда-либо заказ по

if Frontend_Order.objects.filter(USer=request.user.id):
    # your code for thanking for feedback
else:
    # your code for sorry
Вернуться на верх