【问题标题】:How to Change Django AbstractUser Group to String如何将 Django AbstractUser 组更改为字符串
【发布时间】:2020-12-16 19:57:29
【问题描述】:

我在 Django Admin 中创建了一些组,但是每当我将用户添加到其中一个组时,只有组 ID 会显示在我的 API 端点内。有没有办法显示字符串名称?

因此,我希望字段为“Directors”,而不是 1。和扩展 AbstractUser 模型有关系吗?

这就是我现在拥有的所有用户信息:

class User(AbstractUser):
   

序列化器.py

from .models import User
class UserSerializer(serializers.ModelSerializer):
    class Meta:
        exclude = ["username", "password"]
        model = User

【问题讨论】:

  • 你能分享你的序列化器吗?
  • @WillemVanOnsem 是的,我更新了它,它很简单

标签: django django-rest-framework django-users


【解决方案1】:

您可以使用SlugRelatedField [drf-doc] 来序列化组:

from .models import User

class UserSerializer(serializers.ModelSerializer):
    # serialize groups with "slugs" ↓
    groups = serializers.SlugRelatedField(
        many=True,
        slug_field='name'
     )

    class Meta:
        exclude = ['username', 'password']
        model = User

【讨论】:

    猜你喜欢
    • 2021-10-20
    • 2018-02-12
    • 2018-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-27
    相关资源
    最近更新 更多