在 Django Rest Framework 中获取特定对象

Cri*_*owi 5 python django rest django-rest-framework

我只想从 Django Rest Framework 获取 JSON 对象中的一个元素。

我得到了下一个代码序列化器:

class OneUserSerializer(serializers.ModelSerializer):
    class Meta:
        model = Usuario
        fields = ('usuario', 'nombre', 'apellidos', 'mensajes')
Run Code Online (Sandbox Code Playgroud)

视图集:

class OneUserViewSet(viewsets.ModelViewSet):
    queryset = Usuario.objects.filter(id = 'Here is the PARAMETER')
    serializer_class = OneUserSerializer
Run Code Online (Sandbox Code Playgroud)

网址:

router.register(r'user', views.OneUserViewSet)
Run Code Online (Sandbox Code Playgroud)

我只想得到一个对象“Usuario”从 url 传递 id,例如 url/id_user

mar*_*dev 3

如果您使用的是SimpleRouter,那么将为您生成网址:

class OneUserViewSet(viewsets.ModelViewSet):
    queryset = Usuario.objects.all()
    serializer_class = OneUserSerializer
Run Code Online (Sandbox Code Playgroud)

urls.py

from rest_framework import routers

router = routers.SimpleRouter()
router.register(r'user', views.OneUserViewSet)
urlpatterns = router.urls
Run Code Online (Sandbox Code Playgroud)

这将生成以下 url(以及其他):

^users/{pk}/$
Run Code Online (Sandbox Code Playgroud)