from django.db import models class PrimaryDepartment(models.Model): department_name = models.CharField(max_length=255, unique=True, blank=False, verbose_name='部门名称') description = models.TextField(blank=True, verbose_name='描述') class Meta: verbose_name = '一级部门表' verbose_name_plural = '一级部门表' def __str__(self): return self.department_name class SecondaryDepartment(models.Model): primary_department = models.ForeignKey('PrimaryDepartment', on_delete=models.CASCADE, verbose_name='一级部门') department_name = models.CharField(max_length=255, blank=False, verbose_name='二级部门名称') description = models.TextField(blank=True, verbose_name='描述') class Meta: verbose_name = '二级部门表' verbose_name_plural = '二级部门表' unique_together = (('primary_department', 'department_name'),) # 确保同一一级部门下的二级部门名称唯一 def __str__(self): return f"{self.primary_department.department_name} - {self.department_name}"