django - 如何将 Django AbstractUser 组更改为字符串
问题描述
我在 Django Admin 中创建了一些组,但是每当我将用户添加到其中一个组时,只有组 ID 显示在我的 API 端点内。有没有办法显示字符串名称?
因此,我希望该字段不是 1,而是“Directors”。它与扩展 AbstractUser 模型有什么关系吗?
对于我的用户信息,这就是我现在所拥有的一切:
class User(AbstractUser):
序列化程序.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.SlugRelatedField(
many=True,
slug_field='name'
)
class Meta:
exclude = ['username', 'password']
model = User
推荐阅读
- javascript - 尝试创建一个插画脚本来填充所选内容的颜色并将其导出为样本组中的每种颜色
- python - numpy 以指数形式返回 nans。纯 Python 返回正确的结果
- godot - 我在 GODOT 中的 move_and_slide 和 move_and_colide 函数有问题
- sql - 日期过滤器查询不工作
- pyspark - 如何使用 pyspark 连接到独立的 cassandra?
- swift - 在 SwiftUI 上按 3 列出项目
- visual-studio-code - 如何将vscode扩展WebView设置到窗口底部?
- arrays - 有没有办法导入html表并跳过重复的列标题?
- components - Svelte - 组件一如何使用组件二的功能?
- c# - 如何修复“AmbiguousMatchException:请求匹配多个端点。”