小编Kan*_*ran的帖子

Django Rest Framework - OneToOne 反向关系

我有一个自定义用户模型和用户配置文件模型。

class User(AbstractUser):
    """Custom User authentication class to use email as username"""
    username = None
    email = models.EmailField(verbose_name='email', max_length=255, unique=True,
                              error_messages={
                                  'unique': _(
                                          "A user is already registered with this email address"),
                              }, )

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = []

    objects = UserManager()

    def __str__(self):
        return self.email


class UserProfile(models.Model):
    user = models.OneToOneField(User, to_field='email', on_delete=models.CASCADE)
    emp_id = models.CharField(max_length=20, blank=False, default='0', null=False)
    department = models.CharField(max_length=50, blank=True, default='', null=True)

Run Code Online (Sandbox Code Playgroud)

我正在尝试编写一个序列化器,将这两个模型结合起来,生成一个嵌套的 JSON。

例如:

{
  "email":"user@gmail.com",
  "is_active":true,
  "profile":
    {
      "emp_id":2,
      "department":2
    }
}
Run Code Online (Sandbox Code Playgroud)

这就是我试图做的


class …
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework

1
推荐指数
1
解决办法
1302
查看次数

标签 统计

django ×1

django-rest-framework ×1