首页 文章

如何将django-rest-swagger 2.0与现有的DRF应用程序集成(初学者)

提问于
浏览
0

我试图将swagger 2.0与现有的DRF应用程序集成,但在运行 python manage.py runserver 后它在浏览器中出现以下错误:

TemplateDoesNotExist at / swagger rest_framework_swagger / index.html请求方法:GET请求URL:http://127.0.0.1:8000 / swagger Django版本:1.10异常类型:TemplateDoesNotExist异常值:rest_framework_swagger / index.html例外位置:C:\在get_template第25行中的用户\ MHAZIQ~1 \ Desktop \ Tkxel \ mmg-git \ venv \ lib \ site-packages \ django \ template \ loader.py

我在views.py中添加了以下行:

from rest_framework_swagger.views import get_swagger_view

schema_view = get_swagger_view(title='Pastebin API')

我在urls.py中添加了以下行:

url(r'^swagger', views.schema_view),

我尝试过应用以下解决方案:TemplateDoesNotExist at /docs/ rest_framework_swagger/index.html

但它没有解决我的问题,任何人都可以在这方面帮助我吗?

2 回答

  • 0

    在Django设置中将'rest_framework_swagger'添加到INSTALLED_APPS .

    settings.py

    INSTALLED_APPS = [
        ...
            'rest_framework_swagger',
        ]
    

    https://django-rest-swagger.readthedocs.io/en/latest/

  • 1

    经过几个小时的研究后,我发现我的代码存在问题,因为我在现有项目中添加了swagger,它在settings.py中没有以下参数:

    TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },]
    

    现在招摇非常好!

相关问题