Как я могу распечатать значения из базы данных

Итак, я хочу выводить значения, которые были в базе данных, многократно при каждом ее обновлении. Допустим, клиент заплатил 30$ из общей суммы услуг, которая составляет 50$, у него останется 20$. Что-то похожее на это:

(цена услуги = 50$ первый платеж = 30$ остаток = 20$ Дата = 11/12/2022)

В следующий раз, когда он придет оплачивать остаток, будет показано, сколько он заплатил в прошлый раз, с указанием даты. Второй платеж:

(цена услуги = 50$ первый платеж = 30$ остаток = 20$ Дата = 11/12/2022

)

стоимость услуги = 50$ Второй платеж = 20$ остаток = 0$ Дата = 11/22/2022)

и так далее с его транзакциями относительно этой услуги. Я теряюсь в догадках, потому что не знаю, куда двигаться дальше, помогите!

вот код : models.py

class Appointment(models.Model):
    patient = models.ForeignKey(Patient, on_delete = models.CASCADE)
    doctor_of_appointment = models.ForeignKey(Doctor, on_delete = models.CASCADE, related_name='doctor_of_appointment')
    receptionist_of_appointment = models.ForeignKey(Doctor, on_delete = models.CASCADE, related_name='receptionist_of_appointment')
    appointment_date = models.DateField(null=False, blank=False)
    #appointment_timeslot = models.ForeignKey(TimeSlot, on_delete = models.CASCADE)
    appointment_timeslot = models.CharField(max_length=100, default='')
    appointment_description = models.CharField(max_length=1000, null=True, blank=True)
    examine_result = models.CharField(max_length=1000, default='', null=True, blank=True)
    drugs = models.CharField(max_length=1000, default='', null=True, blank=True)
    appointment_status = models.CharField(max_length=10, choices=(('Pending', 'Pending'), 
        ('Completed', 'Completed'), ('Canceled', 'Canceled')), default='Pending')
    

    #Invoicing Section
    service_name = models.CharField(max_length=120, default='', blank=True, null=True)
    total_price = models.DecimalField(max_digits=9, decimal_places=2, blank=True, null=True)
    upfront_payment = models.DecimalField(max_digits=9, decimal_places=2, blank=True, null=True)
    discount = models.DecimalField(max_digits=9, decimal_places=2, blank=True, null=True)
    grand_total = models.DecimalField(max_digits=9, decimal_places=2, blank=True, null=True)
    invoice_date = models.DateField(auto_now_add=True, blank=True, null=True)
    payment_type_choice = (
            ('EVCPLUS', 'EVCPLUS'),
            ('SH.SO', 'SH.SO'),
            ('USD', 'USD'),
        )
    payment_type = models.CharField(max_length=50, default='', blank=True, null=True, choices=payment_type_choice)
    payment_status = models.CharField(max_length=10, choices=(('Pending', 'Pending'), 
        ('Completed', 'Completed'), ('Canceled', 'Canceled')), default='Pending')

        
    def __str__(self):
        return self.patient.patient_name

views.py

Я пытался сделать что-то вроде:

new_update = PaymentUpDate(
                    Decimal(payment_amount = 'Payment Ammount is : {0}'.format(
                        appointment.upfront_payment,
                    ))
                )
                new_update.save()

Но моя проблема в том, как я могу получить значения, которые он заплатил, стоимость услуги и баланс. Код выше не сработал, вот сообщение об ошибке ( TypeError at /edit-payment/1 'payment_amount' is an invalid keyword argument for this function )

Вернуться на верх