Django型号-基于另一外键设置的外键

Django型号-基于另一外键设置的外键,django,django-models,Django,Django Models,我有三种型号,结构如下: class Company(models.Model): company_id = models.AutoField(primary_key=True) company_name = models.CharField(max_length=80, unique=True) company_address = models.CharField(max_length=80, unique=True) class Department(models

我有三种型号,结构如下:

class Company(models.Model):
    company_id = models.AutoField(primary_key=True)
    company_name = models.CharField(max_length=80, unique=True)
    company_address = models.CharField(max_length=80, unique=True)


class Department(models.Model):
    department_id = models.AutoField(primary_key=True)
    company = models.ForeignKey(Company, on_delete=models.RESTRICT)
    department_name = models.CharField(max_length=80, unique=True)


class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    image = models.ImageField(default='profile_pics/default.jpg', upload_to='profile_pics')
    company = models.ForeignKey(Company, on_delete=models.RESTRICT)
    department = models.ForeignKey(Department, on_delete=models.RESTRICT)
    role = models.CharField(max_length=80)
我想做的是根据Profile.company中仅分配的内容限制Profile.department的下拉选项,基于部门:

|  department_id  |  company  |  department_name  |
---------------------------------------------------
|        1        |  comp_A   |  Human Resources  |
|        2        |  comp_A   |     Accounting    |
|        3        |  comp_A   |      Legal        |
|        4        |  comp_B   |  Human Resources  |
|        5        |  comp_B   |     Accounting    |
|        6        |  comp_B   |      Legal        |
|        7        |  comp_B   |        IT         |
这样,只有当用户在公司工作时,才可以选择IT部门

提前谢谢你