Django Rest Framework Reverse()方法失败

法米·艾沙克(Fahmi Eshaq)

我的主要urls.py位于此处ahlami-> ahlami-> urls.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/accounts/', include('accounts.api.urls')),
]

我的帐户应用程序urls.py位于此处ahlami->帐户-> api-> urls.py

urlpatterns = [
    path('users/<int:pk>/', views.UserView.as_view(), name='user-detail')
]

我的其中一个帐户views.py返回

token = Token.objects.create(......)
return Response(data=AnonymousUserTokenResponseSerializer(instance=token).data)

我的令牌模型只有三个字段。为简单起见,我在下面列出了一个字段

class Token(rest_framework.authtoken.models.Token):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE

AnonymousUserTokenResponseSerializer链接到Token模型并返回三个json属性

class AnonymousUserTokenResponseSerializer(serializers.ModelSerializer):
    user_id = serializers.ReadOnlyField(source='user.id')
    user_url = reverse(viewname='user-detail')
    class Meta:
        model = Token
        fields = ('key',
                  'user_id',
                  'user_url')

AnonymousUserTokenResponseSerializer失败,因为它无法识别reverse()

user_url = reverse(viewname='user-detail')

python manage.py runserver由于上面的行而引发以下错误

django.core.exceptions.ImproperlyConfigured:包含的URLconf'ahlami.urls'似乎没有任何模式。如果您在文件中看到有效的模式,则问题可能是由循环导入引起的。

我的设置位于此处ahlami-> ahlami->设置-> base.py,base.py具有此功能

ROOT_URLCONF = 'ahlami.urls'

我期望得到看起来像但由于上述错误而无法显示的输出。

{
    "key": "891e388399f2fcae016fe6887107034239041478",
    "user_id": 29,
    "user_url": http://localhost/api/accounts/users/29 
}

如何解决该错误并使reverse()工作?

django.core.exceptions.ImproperlyConfigured:包含的URLconf'ahlami.urls'似乎没有任何模式。如果您在文件中看到有效的模式,则问题可能是由循环导入引起的。

Arakkal阿布

采用 serializers.HyperlinkedIdentityField

class AnonymousUserTokenResponseSerializer(serializers.ModelSerializer):
    user_id = serializers.ReadOnlyField(source='user.id')
    user_url = serializers.HyperlinkedIdentityField(
        view_name='user-detail',
        source='user.id',
        lookup_field='pk'
    )

    class Meta:
        model = Token
        fields = ('key', 'user_id', 'user_url')

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

Django Rest Framework部分更新

来自分类Dev

Django REST Framework PATCH在必填字段上失败

来自分类Dev

Django Rest Framework and JSONField

来自分类Dev

Django Rest Framework权限冲突

来自分类Dev

serializer.is_valid()失败,尽管`required = False`-Django REST Framework

来自分类Dev

Django Rest Framework将文件上传到方法

来自分类Dev

Django REST Framework 3.0-NOT NULL约束失败:

来自分类Dev

Django Rest Framework API

来自分类Dev

Django Rest Framework令牌身份验证失败导致弹出

来自分类Dev

Django Rest Framework URL模式

来自分类Dev

Django Rest Framework ViewSet方法的Permission_classes

来自分类Dev

Django REST Framework-使用reverse()时使用NoReverseMatch

来自分类Dev

Django Rest Framework API权限

来自分类Dev

JSON API标准的Django Rest Framework方法

来自分类Dev

Django Rest Framework-在ViewSet和Serializer上创建方法

来自分类Dev

Django Rest Framework序列化在发布请求时失败

来自分类Dev

Django Rest Framework:从mixin的dispatch方法返回响应

来自分类Dev

Django Rest Framework嵌套的序列化器创建方法

来自分类Dev

Django Rest Framework的ModuleNotFoundError

来自分类Dev

Django Rest Framework Viewset的HTTP方法

来自分类Dev

如何重写用于批量添加的POST方法-Django Rest Framework

来自分类Dev

如何在Django Rest Framework中获得模型方法的价值?

来自分类Dev

python Django REST Framework CSRF失败:未设置CSRF cookie?

来自分类Dev

创建Django Rest Framework临时发布方法

来自分类Dev

Django Rest Framework令牌身份验证失败导致弹出

来自分类Dev

Django Rest Framework CSRF令牌失败

来自分类Dev

Django REST Framework-从未调用过的更新视图方法

来自分类Dev

Django Rest Framework中扩展用户模型的补丁方法

来自分类Dev

Django Rest Framework不允许方法“POST”

Related 相关文章

  1. 1

    Django Rest Framework部分更新

  2. 2

    Django REST Framework PATCH在必填字段上失败

  3. 3

    Django Rest Framework and JSONField

  4. 4

    Django Rest Framework权限冲突

  5. 5

    serializer.is_valid()失败,尽管`required = False`-Django REST Framework

  6. 6

    Django Rest Framework将文件上传到方法

  7. 7

    Django REST Framework 3.0-NOT NULL约束失败:

  8. 8

    Django Rest Framework API

  9. 9

    Django Rest Framework令牌身份验证失败导致弹出

  10. 10

    Django Rest Framework URL模式

  11. 11

    Django Rest Framework ViewSet方法的Permission_classes

  12. 12

    Django REST Framework-使用reverse()时使用NoReverseMatch

  13. 13

    Django Rest Framework API权限

  14. 14

    JSON API标准的Django Rest Framework方法

  15. 15

    Django Rest Framework-在ViewSet和Serializer上创建方法

  16. 16

    Django Rest Framework序列化在发布请求时失败

  17. 17

    Django Rest Framework:从mixin的dispatch方法返回响应

  18. 18

    Django Rest Framework嵌套的序列化器创建方法

  19. 19

    Django Rest Framework的ModuleNotFoundError

  20. 20

    Django Rest Framework Viewset的HTTP方法

  21. 21

    如何重写用于批量添加的POST方法-Django Rest Framework

  22. 22

    如何在Django Rest Framework中获得模型方法的价值?

  23. 23

    python Django REST Framework CSRF失败:未设置CSRF cookie?

  24. 24

    创建Django Rest Framework临时发布方法

  25. 25

    Django Rest Framework令牌身份验证失败导致弹出

  26. 26

    Django Rest Framework CSRF令牌失败

  27. 27

    Django REST Framework-从未调用过的更新视图方法

  28. 28

    Django Rest Framework中扩展用户模型的补丁方法

  29. 29

    Django Rest Framework不允许方法“POST”

热门标签

归档