Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法在多部分/表单数据中创建具有多对多关系和请求数据的对象_Python_Django_Django Models_Django Rest Framework_Django Views - Fatal编程技术网

Python 无法在多部分/表单数据中创建具有多对多关系和请求数据的对象

Python 无法在多部分/表单数据中创建具有多对多关系和请求数据的对象,python,django,django-models,django-rest-framework,django-views,Python,Django,Django Models,Django Rest Framework,Django Views,我有一个与模型团队有多对多关系的用户模型: class User(AbstractBaseUser): """ model to store user infomation """ ..... team = models.ManyToManyField( "team.Team", blank=True, related_name="team_member") ..... 以下是UserSerializer的一个片段: class UserSerializer(seria

我有一个与模型团队有多对多关系的用户模型:

class User(AbstractBaseUser):
"""
    model to store user infomation
"""
.....
team = models.ManyToManyField(
    "team.Team", blank=True,
    related_name="team_member")
.....
以下是UserSerializer的一个片段:

class UserSerializer(serializers.ModelSerializer):
"""
    User serializer for user ModelViewSet
"""
.....
team = serializers.PrimaryKeyRelatedField(
     queryset=Team.objects.all(), many=True,
     required=False,
     allow_null=True,
     )
.....

class Meta:
    model = User
    exclude = ()
以下是相同的视图:

class UserViewSet(viewsets.ModelViewSet):
""" User model view """
.....

def create(self, request, *args, **kwargs):
    request.data._mutable = True
    team = request.data.get('team')
    team = json.loads(team)
    request.data['team'] = team
    serializer = self.get_serializer_class()
    serializer = serializer(data=request.data)
    if serializer.is_valid(raise_exception=True):
        self.perform_create(serializer)
        .....
以下是使用邮递员表单数据的请求正文的附加屏幕截图:

任何人都可以告诉我我做错了什么。

请尝试使用getlist()方法而不是get()方法,如下所示:

team = request.data.getlist('team[]')

getlist()仍然没有帮助,因为在我获得['[1,2,3]']之后,我将不得不再次使用索引访问此文件,以进一步解析为JSON。您不能以JSON格式传递数据而不是表单数据吗?不,我的模型也有一个ImageField。然后对于表单数据,我认为此方法只适用于!尽管如此,我仍然面临着和之前一样的问题。