TypeError:detail()缺少1个必需的位置参数:“ request”

高拉夫·古普塔(Gaurav Gupta)

我是Django的新手。

最初我有基于功能的视图-

@api_view(['GET', 'PUT', 'DELETE'])
def detail(self,request, pk):
"""
Retrieve, update or delete a product instance.
"""
try:
    product = latesttrial.objects.get(pk=pk)
    newproduct = latesttrial.objects.all()
except latesttrial.DoesNotExist:
    return Response(status=status.HTTP_404_NOT_FOUND)

if request.method == 'GET':
    serializer = latestSerializer(product,context={'request': request})
    return Response(serializer.data)

elif request.method == 'PUT':
    serializer = latestSerializer(product, data=request.data,context={'request': request})
    if serializer.is_valid():
        serializer.save()
        return Response(serializer.data)
    return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

然后它给出了这个错误-

TypeError: detail() missing 1 required positional argument: 'pk' 

为此,我根据此答案进行了这些更改-缺少1个必需的位置参数:“ pk”

然后我有了基于功能的视图

@api_view(['GET', 'PUT', 'DELETE'])
def detail(request, *args, **kwargs):
"""
Retrieve, update or delete a product instance.
"""
try:
    pk = self.kwargs.get('pk')
    product = latesttrial.objects.get(pk=pk)
    newproduct = latesttrial.objects.all()
except latesttrial.DoesNotExist:
    return Response(status=status.HTTP_404_NOT_FOUND)

if request.method == 'GET':
    pk = self.kwargs.get('pk')
    serializer = latestSerializer(product,context={'request': request})
    return Response(serializer.data)

elif request.method == 'PUT':
    pk = self.kwargs.get('pk')
    serializer = latestSerializer(product, data=request.data,context={'request': request})
    if serializer.is_valid():
        serializer.save()
        return Response(serializer.data)
    return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

然后我有这个错误-

TypeError: detail() missing 1 required positional argument: 'request'

这是我的看法-

from django.conf.urls import url, include
from rest_framework.urlpatterns import format_suffix_patterns

from .views import partial, Detailspartial, detail#

urlpatterns = [
        url(r'partial',partial,name="partial"),
        url(r'pardelete/(?P<pk>[0-9]+)/$', Detailspartial.as_view(), name="Partial details"),
        url(r'detail',detail,name="newfunction"),
]

我应该如何解决我的问题。请帮忙!!

查内尔

您可以将更改还原到以前的版本并进行以下更改:

url(r'detail',detail,name="newfunction"),

对此:

url(r'detail(?P<pk>[0-9]+)/$',detail,name="newfunction"),

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

错误“ TypeError:FirstForm()缺少1个必需的位置参数:'request'”

Django抛出TypeError:_wrapped_view()缺少1个必需的位置参数:'request'

Django 2.2 TypeError at /cart/checkout __init__() 缺少 1 个必需的位置参数:'request'

RegisterForm()缺少1个必需的位置参数:“ request”

缺少1个必需的位置参数:“ request” django restframework

Django-缺少1个必需的位置参数:“ request”

文件上载AngularJS和Django:/ uploaded_file uploadFile()处的TypeError缺少1个必需的位置参数:'request'

Django get_total_topup()缺少1个必需的位置参数:“ request”

Django-get_queryset()缺少1个必需的位置参数:“ request”

类型错误:request() 缺少 1 个必需的位置参数:urllib3 中的“url”

Django - PUT 端点身份验证器错误“wrapped_view() 缺少 1 个必需的位置参数:'request'”

_wrapped()缺少1个必需的位置参数:'request':方法装饰器出现问题。(Django,Ratelimit库)

如何在此处传递 Id(错误 put() 缺少 1 个必需的位置参数:'request')在表单模板 Django 中

TypeError:predict()缺少1个必需的位置参数:“ params”

TypeError:fit()缺少1个必需的位置参数:'y'

TypeError:append()缺少1个必需的位置参数:“ values”

geopy TypeError:geocode()缺少1个必需的位置参数:“ query”

TypeError:setDocumentLocator()缺少1个必需的位置参数:“ locator”

python decorator TypeError缺少1个必需的位置参数

TypeError:__call __()缺少1个必需的位置参数:“ inputs”

TypeError:<lambda>()缺少1个必需的位置参数:“ w”

Scrapy:TypeError:__init __()缺少1个必需的位置参数:'url'

TypeError:缺少1个必需的位置参数:'self'

sklearn:TypeError:fit()缺少1个必需的位置参数:“ x”

TypeError:__init __()缺少1个必需的位置参数:'id'

/ save() 处的 TypeError 缺少 1 个必需的位置参数:'self'

TypeError:<lambda>()缺少1个必需的位置参数:

TypeError:save()缺少1个必需的位置参数:“ self”

Keras TypeError:fit()缺少1个必需的位置参数:“ y”