【发布时间】:2021-05-01 13:29:02
【问题描述】:
您好,因为我是新手,我正在尝试在帐户字段上创建一个具有多对多关系的新用户:
models.py
class User(AbstractBaseUser, PermissionMixin):
id = models.UUIDField(primary_key=True)
name = models.CharField(max_length=250),
account = models.ManyToManyField(
'accounts.Account',
'through=’Membership'
)
class Account(models.Model):
id = models.UUIDField(primary_key=True)
name = models.CharField(max_length=250),
class Membership(models.Model):
id = models.UUIDField(primary_key=True)
account = models.ForeignKey(‘accounts.Account’)
permissions = models.ManyToManyField(‘accounts.Role’)
我需要实现的是从api创建新用户后,我需要得到这个JSON:
{
id: 1,
name: 'User 1',
accounts: [
{
id: 1,
name: 'account1',
permissions: [
{
id: 1,
name: 'permission1'
}
]
},
{
id: 2,
name: 'account2',
permissions: [
{
id: 1,
name: 'permission'
},
{
id: 2,
name: 'permission2'
}
]
}
]
}
到目前为止,我只有这个,我想知道如何处理具有 MAnyToMany 关系的帐户...
user = models.User.objects.create_user(
name='user 2',
accounts= ????
)
```’
Do I need to pass an array with accounts ids? but then how I can set the permission ? …
Thanks in advanced!!
【问题讨论】:
标签: django api rest django-models django-rest-framework