0

ユーザーを作成するために継承されたdjango auth Userモデルを検討してください。

class UserProfile(models.Model):
  user = models.OneToOneField(User)

class Domain(models.Model):
  customer = models.ForeignKey(User)

class EmailAccount(models.Model):
  domain = models.ForeignKey(Domain)

特定の UserProfile インスタンスに対して複数のユーザーを作成したい (ユーザー プロファイルは、一度だけ保存する必要がある顧客です)。別のユーザーが作成された場合、そのユーザーは特定のドメインのみを管理できるため、そのドメインで作成された電子メール アカウントを管理できます。ログインすると、同じユーザーの他のドメインで作成された電子メールアカウントにアクセスできないはずです。django管理者を使用して同じことをしたいと考えています。

4

1 に答える 1

0

Many-to-many関係は、どちらの側にも多くを許可します。

class UserProfile(models.Model):
    Users = models.ManyToMany(User)

>>> u1 = User(id=1)
>>> u2 = User(id=2)
>>> user_profile = UserProfile()
>>> user_profile.save()
>>> user_profile.users.all()
[]
>>> user_profile.users.add(u1.id, u2.id)
>>> user_profile.save()
>>> user_profile.users.all()
[<User: User object>, <User: User object>]
于 2013-03-07T13:06:40.210 に答える