Django Rest Framework:查找超链接模型的URL

马克斯·希伯

我使用的Django的REST框架的HyperlinkedModelSerializer,ModelViewset和defaultrouter和具有良好的网址,像这样结束:http://localhost:8000/api/users/1我想给定一个用户ID,为该用户找到完全合格的url,而无需对任何内容进行硬编码。给定53,我想要http://localhost:8000/api/users/1,并且当我投入生产时,主机应该更改。

# from urls.py
router = routers.DefaultRouter()
router.register(r'users', shared_views.UserViewSet)


# from models.py
class UserViewSet(viewsets.ModelViewSet):
    '''
    endpoint for viewing/editing users
    '''
    queryset = User.objects.all().order_by('-date_joined')
    serializer_class = UserSerializer


# from serializers.py

class UserSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = User
        fields = ('url', 'username', 'email', 'groups')

我怎样才能做到这一点?我试过:reverse(UserViewSet.as_view({'get': 'retrieve'}), args=[request.user.id])但是出现了这个错误:

找不到带有参数“(1,)”和关键字参数“ {}”的“ shared.views.UserViewSet”。尝试了0个模式:[]

马克斯·希伯

正如@Anush所说,我可以使用序列化器来获取URL。该请求需要以特定方式作为关键字参数传递(请参见下文):

class OwnedViewSet(viewsets.ModelViewSet):
    ''' ModelViewSets that use hyperlinked model serializers
        can inherit this to automatically
        set `owner` = current user. 
    '''
    def create(self, request, *args, **kwargs):
        serialized_owner = UserSerializer(request.user, context={'request': request})
        request.data['owner'] = serialized_owner.data['url']
        return super(OwnedViewSet, self).create(request, *args, **kwargs)

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Django Rest Framework,使嵌套关系超链接

来自分类Dev

Django REST Framework url 链接 - 无法解析超链接关系的 URL

来自分类Dev

Django REST Framework:无法使用视图名称解析超链接关系的URL

来自分类Dev

Django Rest Framework-配置不正确:无法解析超链接关系的URL

来自分类Dev

Django REST Framework:无法使用视图名称解析超链接关系的URL

来自分类Dev

Django-Rest-Framework。通过查询参数的超链接实体

来自分类Dev

测试Django Rest Framework时创建超链接关系

来自分类Dev

Django-Rest-Framework关系和超链接API问题

来自分类Dev

Django REST Framework:何时创建超链接资源以及何时嵌套资源?如何发布嵌套资源?

来自分类Dev

如何在Django Rest Framework中建立嵌套关系的超链接字段?

来自分类Dev

Django Rest Framework超链接名称空间配置不正确

来自分类Dev

Django REST Framework 中的命名空间超链接序列化程序

来自分类Dev

Django Rest Framework URL模式

来自分类Dev

Django Rest Framework反向URL

来自分类Dev

Django Rest Framework:具有datetime查找字段的Detail模型-视图集的自定义url模式

来自分类Dev

django rest模型权限

来自分类Dev

Django Rest Framework and JSONField

来自分类Dev

Django Rest Framework API

来自分类Dev

Django Rest Framework的ModuleNotFoundError

来自分类Dev

Django Rest Framework中有多个模型?

来自分类Dev

Django-Rest Framework多个模型

来自分类Dev

Django Rest Framework的贯穿模型问题

来自分类Dev

Django Rest Framework,使用多个模型查询

来自分类Dev

Django Rest Framework将登录的用户链接到应用程序模型

来自分类Dev

Django Rest Framework API权限

来自分类Dev

Django Rest Framework权限冲突

来自分类常见问题

Django Rest Framework部分更新

来自分类Dev

Django Rest Framework:最佳做法?

来自分类Dev

Django Rest Framework APIView参数

Related 相关文章

  1. 1

    Django Rest Framework,使嵌套关系超链接

  2. 2

    Django REST Framework url 链接 - 无法解析超链接关系的 URL

  3. 3

    Django REST Framework:无法使用视图名称解析超链接关系的URL

  4. 4

    Django Rest Framework-配置不正确:无法解析超链接关系的URL

  5. 5

    Django REST Framework:无法使用视图名称解析超链接关系的URL

  6. 6

    Django-Rest-Framework。通过查询参数的超链接实体

  7. 7

    测试Django Rest Framework时创建超链接关系

  8. 8

    Django-Rest-Framework关系和超链接API问题

  9. 9

    Django REST Framework:何时创建超链接资源以及何时嵌套资源?如何发布嵌套资源?

  10. 10

    如何在Django Rest Framework中建立嵌套关系的超链接字段?

  11. 11

    Django Rest Framework超链接名称空间配置不正确

  12. 12

    Django REST Framework 中的命名空间超链接序列化程序

  13. 13

    Django Rest Framework URL模式

  14. 14

    Django Rest Framework反向URL

  15. 15

    Django Rest Framework:具有datetime查找字段的Detail模型-视图集的自定义url模式

  16. 16

    django rest模型权限

  17. 17

    Django Rest Framework and JSONField

  18. 18

    Django Rest Framework API

  19. 19

    Django Rest Framework的ModuleNotFoundError

  20. 20

    Django Rest Framework中有多个模型?

  21. 21

    Django-Rest Framework多个模型

  22. 22

    Django Rest Framework的贯穿模型问题

  23. 23

    Django Rest Framework,使用多个模型查询

  24. 24

    Django Rest Framework将登录的用户链接到应用程序模型

  25. 25

    Django Rest Framework API权限

  26. 26

    Django Rest Framework权限冲突

  27. 27

    Django Rest Framework部分更新

  28. 28

    Django Rest Framework:最佳做法?

  29. 29

    Django Rest Framework APIView参数

热门标签

归档