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

维卡斯·高塔姆(Vikas Gautam)

我现在正在使用路由器创建网址,我想为我的api制作网址,但问题是,我遇到了错误

createuser()缺少1个必需的位置参数:'request'缺少1个必需的位置参数:'request'

我在UserAuthAPIView类内的所有方法都遇到相同的错误,我已经阅读了stackoverflow上的解决方案,但在我的情况下它们不起作用。

我在UserAuthAPIView类中有很多方法,我想为所有这些方法创建URL。

例如

127.0.0.1:8000/api
127.0.0.1:8000/api/createuser
127.0.0.1:8000/api/login
127.0.0.1:8000/api/<pk>/viewuser

urls.py

from django.conf.urls import url
from UserAPI.api import views
from  UserAPI.api.views import UserAuthAPIView

urlpatterns = [
    url(r'^$', UserAuthAPIView.as_view({'get': 'list'}), name='user-list'),
    url(r'createuser/$', views.UserAuthAPIView.createuser, name='user-create'),
    #url(r'userlogin/$', views.UserAuthAPIView.userlogin, name='user-login'),
]

views.py

class UserAuthAPIView(ModelViewSet):
    queryset = UserModel.objects.all()
    serializer_class = ListViewSerializer

    def get_object(self, queryset=None):
        return self.request.user

    @action(methods=['post'], detail=False, permission_classes=[AllowAny], serializer_class=UserSerializer)
    def createuser(self, request, *args, **kwargs):
        data = request.data
        serializer = UserSerializer(data=data)
        if serializer.is_valid():
            serializer.save()
        return Response({ "status" : "user created successfully"}, status=HTTP_201_CREATED)
利诺维亚

路由器在视图集上执行一些操作,尤其是添加了从http动词到关联函数的映射。

您需要执行类似的操作:

urlpatterns = [
    url(r'^$', UserAuthAPIView.as_view({'get': 'list'}), name='user-list'),
    url(r'createuser/$', views.UserAuthAPIView.as_view({'post': 'createuser'}), name='user-create'),
]

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

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

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

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

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

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

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

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

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

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

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

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

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

django 模板标签缺少 1 个必需的位置参数:值

Django模型属性:缺少1个必需的位置参数:

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

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

Django - 缺少 1 个必需的位置参数:'_id'

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

Django Formset.is_valid 缺少 1 个必需的位置参数:'self'

在django中获取此错误“ login()缺少1个必需的位置参数:'user'”

django_podcasting迁移:TypeError:__init __()缺少1个必需的位置参数:'on_delete'

Django - TypeError: load_stations() 缺少 1 个必需的位置参数:“请求”?

Django 自定义 PasswordResetView:__init__() 缺少 1 个必需的位置参数:'user'

Django 和 selenium TypeError: setUpClass() 缺少 1 个必需的位置参数:'cls'

基于 Django 分类的视图 __init__() 缺少 1 个必需的位置参数

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

Django自定义URL缺少1个必需的位置参数

在 Django 中使用 Form - get() 缺少 1 个必需的位置参数:'header'

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