Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.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/20.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 Can';t放置ModelViewSet Django Rest框架_Python_Django_Django Rest Framework - Fatal编程技术网

Python Can';t放置ModelViewSet Django Rest框架

Python Can';t放置ModelViewSet Django Rest框架,python,django,django-rest-framework,Python,Django,Django Rest Framework,我不知道为什么我不能像文档中所示那样将请求放入ModelViewSet,但是PUT不起作用。有什么想法吗?我在下面包含了我的视图和序列化程序 class UserProfileViewSet(viewsets.ModelViewSet): queryset = UserProfile.objects.all() serializer_class = UserProfileSerializer filter_fields = ('user', 'id', 'account_

我不知道为什么我不能像文档中所示那样将请求放入ModelViewSet,但是PUT不起作用。有什么想法吗?我在下面包含了我的视图和序列化程序

class UserProfileViewSet(viewsets.ModelViewSet):
    queryset = UserProfile.objects.all()
    serializer_class = UserProfileSerializer
    filter_fields = ('user', 'id', 'account_type')

class UserProfileSerializer(serializers.ModelSerializer):
    class Meta:
        model = UserProfile`

REST_FRAMEWORK = {
    'DEFAULT_MODEL_SERIALIZER_CLASS':
        'rest_framework.serializers.ModelSerializer',
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.TokenAuthentication',
    ),
    'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.AllowAny',
    ),
    'DEFAULT_FILTER_BACKENDS': ('rest_framework.filters.DjangoFilterBackend',)
}

根据你在这里展示的,它应该是有效的。PUT在列表视图中不起作用,仅在对象详细信息视图中起作用。尝试创建一个对象并查看其详细视图,检查是否可以在PUT请求中看到PUT按钮,您应该有一个名为“\u method”和值为“PUT”的参数。就是这样。

有没有可能您的请求不正确?您需要在url中指定要更新的对象

例如,url需要包含您尝试更新的对象的id:


当您没有在请求中指定对象时,您会得到“Method\”PUT\“not allowed.”。

在UserProfile的末尾有一个额外的引号字符。可能是这样吗?