簡體   English   中英

如何在Django中解決與用戶模型的外鍵關系

[英]how to resolve foreign key relations to user model in django

考慮繼承來創建用戶的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實例創建1個以上的用戶(用戶個人資料是只應存儲一次的客戶); 如果創建了另一個用戶,則他將只能管理特定域,因此只能管理該域上的電子郵件帳戶。 登錄后,他應該不能訪問在同一用戶在任何其他域上創建的任何電子郵件帳戶。我希望使用django管理員執行相同的操作。

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>]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM