Изменение генерации таблиц моделей django по умолчанию
Я пытаюсь создать две связанные модели в django, пользовательскую модель пользователя и модель компании.
где один пользователь принадлежит одной компании, а одна компания имеет много пользователей.
class Company(models.Model):
name = models.CharField(max_length=255)
class User(AbstractBaseUser):
objects = UserManager()
id = models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, unique=True)
name = models.CharField(max_length=67)
username = models.CharField(max_length=255, unique=True)
email = models.EmailField(max_length=255, unique=True)
company = models.ForeignKey(Company, on_delete=models.CASCADE)
last_login = models.DateTimeField(auto_now=True)
date_joined = models.DateTimeField(auto_now_add=True)
is_active = models.BooleanField(default=True)
is_staff = models.BooleanField(default=False)
is_admin = models.BooleanField(default=False)
is_supuser = models.BooleanField(default=False)
USERNAME_FIELD = 'email'
def __str__(self):
return self.email
def has_perm(self, perm, obj=None):
return True
def has_module_perms(self, app_label):
return True
По умолчанию django сгенерировал две таблицы следующим образом:
Но я не хочу никаких внешних ключей непосредственно на этих таблицах, вместо этого
я хочу третью вспомогательную таблицу с двумя внешними ключами от моделей
вот так:
Как я могу сделать что-то подобное?