Я работаю над проектом, в котором у меня есть модели: клиент, пользователь и расширения, просто чтобы сделать это проще.
Пользователь должен быть связан с одним клиентом, чтобы иметь добавочный номер.
Пользователь может иметь расширения, скажем, 100 и 101.
Другой пользователь, связанный с другим клиентом, может иметь такие же расширения 100 и 101.
Итак, Расширения не являются уникальными в моей базе данных, поэтому они позволяют Пользователю иметь два идентичных добавочных номера, когда я добавляю его в Администрирование, что неправильно. Как проверить, что добавляемый добавочный номер уже не содержится у этого пользователя?
class Extension(models.Model):
user = models.ForeignKey(User, verbose_name=u"User")
date_created = models.DateTimeField(auto_now_add=True, auto_now=True)
number = models.CharField(max_length=16, unique=False)
kind = models.SmallIntegerField(choices=KIND_CHOICES,default=KIND_UNKNOWN)
Класс User является классом Django по умолчанию.
class Client(models.Model):
name = models.CharField(u"Nome", max_length=64)
last_update = models.DateTimeField(null=True, blank=True)
last_inbound_call = models.DateTimeField(null=True, blank=True)
last_outbound_call = models.DateTimeField(null=True, blank=True)
username = models.CharField(max_length=32)
password = models.CharField(max_length=16)