Изменение внешнего ключа в зависимости от предыдущего выбора Django
Здравствуйте, у меня есть небольшой вопрос, с которым я испытываю трудности. У меня есть две модели, которые используют внешние ключи. Но я хочу, чтобы опции одного из внешних ключей менялись в зависимости от того, что вы выбрали в предыдущем fk.
Вот код.
class Customer(models.Model):
company_name = models.CharField(max_length=255)
contact_person = models.CharField(max_length=255)
email = models.EmailField()
phone = models.IntegerField()
active = models.CharField(choices=yesno, max_length=200)
submitted_date_time = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.company_name
class Connections(models.Model):
company = models.ForeignKey(Customer, on_delete=models.CASCADE)
customerVlan = models.ForeignKey(CustomerVlan, on_delete=models.CASCADE)
switch_port_number = models.IntegerField(default=0)
duplex = models.CharField(choices=duplex, max_length=200)
voice_vlan_number = models.IntegerField(default=0)
phone_mac_address = models.CharField(max_length=200)
phone_extension = models.CharField(max_length=200)
purpose = models.TextField()
sticky_port = models.CharField(choices=yesno, max_length=200)
additional_configuration = models.TextField()
remark = models.TextField()
actual_user = models.CharField(max_length=200)
status = models.CharField(choices= status, max_length=200)
connection_date = models.DateField(default=timezone.now)
disconnection_date = models.DateField(default=timezone.now)
def __str__(self):
return self.actual_user
class WorkOrder(models.Model):
work_order_date = models.DateTimeField(default=timezone.now)
request_date = models.DateField(default=timezone.now)
company_id = models.ForeignKey(Customer, on_delete=models.CASCADE)
connections= models.ForeignKey(Connections, on_delete=models.CASCADE, blank=True, null=True)
service_desk_ticket_number = models.CharField(max_length=200)
request_type = models.CharField(choices=requestType, max_length=200)
request_description = models.TextField()
configuration_remark = models.TextField()
comment = models.TextField()
engineer_assigned = models.CharField(max_length=200)
vlan_number = models.ForeignKey(CustomerVlan, on_delete=models.CASCADE)
submitted_date_time = models.DateTimeField(default=timezone.now)
Как вы можете видеть на изображении, когда я выбираю идентификатор компании, я хочу, чтобы отображались только связи с этой компанией, а не все в базе данных, потому что есть много связей.