如何将 Django AbstractUser 组更改为字符串
How to Change Django AbstractUser Group to String
我在 Django Admin 中创建了一些组,但每当我将用户添加到其中一个组时,只有组 ID 显示在我的 API 端点内。有没有办法显示字符串名称?
因此,我希望该字段不是 1,而是“Directors”。它与扩展 AbstractUser 模型有什么关系吗?
这就是我现在所有的用户信息:
class User(AbstractUser):
Serializer.py
from .models import User
class UserSerializer(serializers.ModelSerializer):
class Meta:
exclude = ["username", "password"]
model = User
您可以使用 SlugRelatedField
[drf-doc] 来序列化组:
from .models import User
class UserSerializer(serializers.ModelSerializer):
# serialize groups with "slugs" ↓
groups = serializers.<b>SlugRelatedField(</b>
many=True,
<b>slug_field='name'</b>
<b>)</b>
class Meta:
exclude = ['username', 'password']
model = User
我在 Django Admin 中创建了一些组,但每当我将用户添加到其中一个组时,只有组 ID 显示在我的 API 端点内。有没有办法显示字符串名称?
因此,我希望该字段不是 1,而是“Directors”。它与扩展 AbstractUser 模型有什么关系吗?
这就是我现在所有的用户信息:
class User(AbstractUser):
Serializer.py
from .models import User
class UserSerializer(serializers.ModelSerializer):
class Meta:
exclude = ["username", "password"]
model = User
您可以使用 SlugRelatedField
[drf-doc] 来序列化组:
from .models import User
class UserSerializer(serializers.ModelSerializer):
# serialize groups with "slugs" ↓
groups = serializers.<b>SlugRelatedField(</b>
many=True,
<b>slug_field='name'</b>
<b>)</b>
class Meta:
exclude = ['username', 'password']
model = User