我想知道我应该向django-rest-framework
发送什么样的数据,而不获取字符串索引必须是整数
功能是
@permission_classes((IsAuthenticated,))
def update_interests(request):
user_profile = request.user.userprofile
interests = request.data
user_profile.interests.set(
TopicTag.objects.get(name=interest['name'])[0] for interest in interests
)
user_profile.save()
serializer = UserProfileSerializer(user_profile, many=False)
return Response(serializer.data)
错误是
typeError: string indices must be integers
我发送的数据是json
{
"name": ["news"]
}
以防万一models.py看起来像这样
class TopicTag(models.Model):
name = models.CharField(primary_key=True, max_length=150, null=False, blank=False)
def __str__(self):
return self.name
也许你需要序列化程序,所以你在这里
class TopicTagSerializer(serializers.ModelSerializer):
class Meta:
model = TopicTag
fields = '__all__'
帮帮我:)
request.data是一个字典。其值如下所示:
当您在for循环中遍历它时,它将在迭代器中返回字典的键。 在这种情况下:
现在,当你试图像这样访问它
它返回一个错误,因为它需要一个整数
你可以得到这样的名字
在你的查询中,你可以这样做
相关问题 更多 >
编程相关推荐