Как хранить данные за каждый месяц в модели django
Я создаю приложение, в котором люди могут войти в систему и создать комитет и пригласить других пользователей присоединиться к их комитету, а затем тот, кто присоединился к нему, будет платить комитету каждый месяц до конечной даты. и один из пользователей получит комитет в конце каждого месяца, у меня проблема, я не знаю, как хранить данные пользователей, которые платят месяц за месяцем. Я создал все эти модели django. но теперь недостающей частью является хранение данных каждого месяца, так что я могу показать статус как ожидающий или завершенный.
class Committee(models.Model):
committee_creator = models.ForeignKey(Profile, on_delete=models.CASCADE)
committee_name = models.CharField(max_length=100)
committee_members_limit = models.IntegerField()
committee_amount_per_month = models.IntegerField(default=0)
committee_month_period = models.IntegerField(default=0)
committee_amount_limit = models.IntegerField(null=True)
committee_starting_date = models.DateTimeField(auto_now_add=False)
committee_ending_date = models.DateTimeField(auto_now_add=False)
class Participants(models.Model):
participants_name = models.ForeignKey(Profile, on_delete=models.CASCADE)
participants_committee_name = models.ForeignKey(Committee, on_delete=models.CASCADE)
participants_paid_status = models.BooleanField(default=False)
participants_amount_paid = models.IntegerField()
participants_payment_slip = models.ImageField(upload_to='images/', null=True, blank=True)
Вы можете иметь еще одну таблицу под названием PaymentDetails с деталями даты платежа, как показано ниже
class Participants(models.Model):
participants_name = models.ForeignKey(Profile, on_delete=models.CASCADE)
participants_committee_name = models.ForeignKey(Committee, on_delete=models.CASCADE)
class PaymentDetails (models.Model):
participants_name = models.ForeignKey(Participants, on_delete=models.CASCADE)
participants_paid_status = models.BooleanField(default=False)
participants_amount_paid = models.IntegerField()
participants_payment_date = models.DateTimeField(auto_now_add=True)
participants_payment_slip = models.ImageField(upload_to='images/', null=True, blank=True)
Теперь, вы можете иметь детали оплаты каждого месяца для участников.