我对DFR相当了解,因此我正在按照教程学习。 到目前为止,一切都很好,但是在最后一部分,here中,我必须向API添加一个架构,并按照说明进行操作,因此安装coreapi并添加
from rest_framework.schemas import get_schema_view
schema_view = get_schema_view(title='Pastebin API')
urlpatterns = [
path('schema/', schema_view),
...
]
在tutorial / urls.py中,所以我完整的tutorial / urls.py是:
from django.conf.urls import url
from django.contrib import admin
from django.urls import path, include
from rest_framework.schemas import get_schema_view
schema_view = get_schema_view(title='Pastebin API')
urlpatterns = [
url(r'^admin/', admin.site.urls),
path('', include('snippets.urls')),
path('api-auth/', include('rest_framework.urls')),
path('schema/', schema_view),
]
但是,如果我从http://127.0.0.1:8000/schema/的浏览器访问/ schema /,则会得到:
AttributeError at /schema/
'Request' object has no attribute 'accepted_renderer'
由于我按照本教程的说明进行操作,因此我不知道如何解决该错误。
我的conf是:
coreapi 2.3.3
coreschema 0.0.4
Django 2.1.3
djangorestframework 3.9.0
答案 0 :(得分:1)
有两种解决方案:
安装pyyaml:
pip install pyyaml
OR
还原DRF:
pip install djangorestframework==3.8.0
答案 1 :(得分:0)
本教程使用HTTPie从命令行向该端点发出请求,而不是使用需要指定渲染器的浏览器。如果您希望通过浏览器进行操作,请指定documentation描述的渲染器