像https://petstore.swagger.io/#/pet这样的招摇导航在我的项目中不起作用

时间:2019-04-16 13:41:34

标签: django-rest-framework django-swagger

我见过的所有Swagger应用程序都在端点相关的块之间导航,例如:https://petstore.swagger.io/#/store/getInventory

当您单击某些块时,URL会更改。无法理解我在做什么错,但是我什么都不是。我的浏览器始终显示相同的URL,即“ https://petstore.swagger.io/”中没有#等。

我如何使用Swagger的一些示例。为了确保与我的项目无关,尝试了一个教程,但是有同样的问题

serializers.py:

class PostSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = Post
        fields = ('author', 'title')

views.py:

class PostViewSet(viewsets.ModelViewSet):
    queryset = Post.objects.all()
    serializer_class = PostSerializer

urls.py:

router = DefaultRouter()
router.register('posts', views.PostViewSet)

schema_view = get_swagger_view(title='Posts API')

urlpatterns = [
    url('^$', schema_view),
    url(r'^', include(router.urls)),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

我做错了什么?谢谢!

1 个答案:

答案 0 :(得分:1)

在您的swagger ui配置文件中启用深层链接:

deepLinking: true

https://github.com/swagger-api/swagger-ui/blob/8dab91f184103be794ae2fcfeb67b02126730e88/docs/deep-linking.md