【发布时间】:2022-01-26 05:17:15
【问题描述】:
如何在 DRF 上实现内部联接数据。我有两个模型类,一个是user 和client。当我添加客户端时,我正在选择由该客户端处理的用户列表。现在,当我从 API 获取用户列表时,我还需要该 API 中的客户端名称。我的模态类是:
class User(AbstractBaseUser, PermissionsMixin):
identifier = models.UUIDField(default=uuid.uuid4, editable=False, serialize=False, verbose_name='identifer')
email = models.EmailField(max_length=255, unique=True)
name = models.CharField(max_length=255)
image = models.ImageField(null=True, upload_to=user_image_file_path)
contact_no = models.CharField(max_length=255, default='')
class Client(models.Model):
name = models.CharField(max_length=200)
main_contact = models.ForeignKey(
'User',
on_delete=models.CASCADE,
related_name="main_contact",
null=True
)
users = models.ManyToManyField(
User,
related_name="users"
)
views.py
class GetAllUserList(generics.ListAPIView):
permission_classes = (permissions.IsAuthenticated, jwtPermissions.IsSSOAdminOrReadOnly,)
queryset = User.objects.all()
pagination_class = PostLimitOffsetPagination
serializer_class = GetAllUserSerializer
序列化器.py
class GetAllUserSerializer(serializers.ModelSerializer):
class Meta:
model = get_user_model()
fields = '__all__'
任何建议都会有很大帮助!
【问题讨论】:
标签: python django django-rest-framework