我構建了我的第一個應用程式,它允許我在名為“projects”的表中創建新條目現在我有標準用戶模型,我想創建一個新表,我可以在其中將用戶(ID 或名稱)分配給一個或更多的專案物件。
理想情況下,這應該是一個全新的表,只包含用戶 ID/名稱和專案 ID/名稱的條目對。但我真的不知道如何從用戶串列中提取一個物件,從專案串列中提取一個物件,將它們放在一個新表中。
用戶應該能夠添加一個新的“專案”并自動分配給它。
uj5u.com熱心網友回復:
我建議做的是像這樣構建模型:
class Project(models.Model):
... other fields
users = models.ManyToManyField(User, null=True, blank=True)
正如你在這里看到的,我正在使用 ManyToMany 關系,它創建了另一個存盤 project_id-user_id 對的表。
如果您想回傳專案物件的所有用戶物件,您應該執行以下操作:
project = Projects.objects.get(...)
project_users = project.users.all()
如果您想回傳 User 物件的相關專案,您應該執行以下操作:
user = User.objects.get(...)
user_projects = user.project_set.all()
更多參考請參見https://docs.djangoproject.com/en/3.2/topics/db/examples/many_to_many/
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/322270.html
