Django Как искать данные модели в HTML?

У меня есть следующие классы в моем файле models.py.

class Resident(models.Model):
    house_number = models.CharField(max_length=100,unique=True,primary_key=True)
    name = models.CharField(max_length=100)
    contact_number = PhoneNumberField()
            
    def __str__(self):
        return self.house_number + " : " + self.name
      
class Balance(models.Model):
    residents = models.OneToOneField(Resident, on_delete=models.CASCADE, primary_key=True)
    date = models.DateTimeField(default=timezone.now)
    previous_balance = models.DecimalField(max_digits=1000, decimal_places=2 , null=True)
    transaction = models.DecimalField(max_digits=1000, decimal_places=2, null=True)
    final_balance = models.DecimalField(max_digits=1000, decimal_places=2, null=True, editable=False)
    
    def save(self, *args, **kwargs):
        self.final_balance = self.previous_balance + self.transaction
        return super().save(*args, **kwargs)
    
    def __str__(self):
        return self.residents.name + " : " + str(self.final_balance)
        
class Transaction(models.Model):   
    transaction_id = models.UUIDField(primary_key=True,default=uuid.uuid4(), editable=False,unique=True)
    residents = models.ForeignKey(Resident, on_delete=models.CASCADE)
    created = models.DateTimeField(blank=True)
    transaction_Amount = models.DecimalField(max_digits=1000, decimal_places=2)
    date = models.DateTimeField()
    category_choices = (
                    ('Monthly-Bill', 'Monthly-Bill'),
                    ('Cash', 'Cash'),
                    ('Transfer', 'Transfer'),
                    ('EFT', 'EFT'),
                    )
    category = models.CharField(max_length = 13 ,choices = category_choices, default = 'Monthly-Bill')
    def save(self, *args, **kwargs):
        if self.transaction_id == "":
            self.transaction_id = generate_code()
        if self.created is None:
            self.created = timezone.now()
        try:
            last_bal = Balance.objects.filter(pk = self.residents).get()
        except Balance.DoesNotExist:
            Balance.objects.create(residents = self.residents, date=self.date, previous_balance=Decimal.from_float(0.00),
                                transaction=self.transaction_Amount)
        else:
            last_bal.date = date=self.date
            last_bal.previous_balance = last_bal.final_balance
            last_bal.transaction = self.transaction_Amount
            last_bal.save()
        return super().save(*args, **kwargs)
   
    def __str__(self):
        return str(self.transaction_id) + " : " + self.residents.name

I would like to know how can I create a dropdownlist using the Resident.name to search/filter for a particular Transaction in html? I would like to populate the dropdownlist with the Resident.name values and then using that list to filter/search for a particular Transaction, that is linked to that resident?

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