【发布时间】:2016-03-24 09:00:36
【问题描述】:
我对 Django Rest Framework 有点陌生。我知道可以使用 Browsable API 发布数据,我只是不知道如何。我有这个简单的看法:
class ProcessBill(APIView):
def post(self, request):
bill_data = request.data
print(bill_data)
return Response("just a test", status=status.HTTP_200_OK)
当我转到指向该视图的 url 时,我得到了带有来自服务器 method not allowed 的响应的 rest_framework 可浏览 api 视图,这是可以理解的,因为我没有设置 def get() 方法。但是......我怎样才能发布数据?我期待某种形式的某个地方。
编辑
这是可浏览 API 如何为我寻找的屏幕截图,它是西班牙语。 view 和我上面写的一样,但是是西班牙语。如您所见...没有 POST 数据的表单:/ .
【问题讨论】:
-
您一定会看到下面标记为 -
Content的文本框。你能分享一下你的浏览器窗口的截图吗? -
@RohitJain Thans 的答案。刚刚将其添加为编辑。
-
您需要在视图中定义
get_serializer_class()方法或serializer_class属性。 -
@RohitJain 做到了,但它不起作用。此外,解决它也没有多大意义。您能否指出我的文档,我试图查找有关“设置”可浏览 Api 的信息,但找不到任何信息。看起来它应该开箱即用。
-
@alejoss 我认为您的发布方法需要接受
formatkwarg,但据我所知,发布通常应该有效。您是否尝试过从命令行发布一些数据(即使用curl?)以查看服务器是否接受它?
标签: python django django-rest-framework