django-rest-framework - DRF 可浏览 api 原始数据占位符
问题描述
我是 DRF 的新手,我对可浏览的 API 有疑问。我希望使用常规 APIView 在“原始数据”选项卡的“内容”中填充一个空的 JSON,以便用户看到请求的外观。
它在我使用 CreateModelMixin 时有效,但我想在创建后返回与整个模型不同的东西,甚至有只做一些计算而没有任何模型的路由。
# serializers.py----------------------
class AnalysisSerializer(serializers.ModelSerializer):
requestor = serializers.ReadOnlyField(source='requestor.username')
results = serializers.ReadOnlyField()
class Meta:
model = Analysis
fields = ('requestor','text','results')
# views.py----------------------
class AnalysisRequest(APIView):
"""
Request text analysis.
"""
serializer_class = AnalysisSerializer
def post(self, request):
serializer = AnalysisSerializer(data=request.data)
if serializer.is_valid():
text = serializer.validated_data['text']
results = analyze.analyze_text(text)
serializer.save(requestor=request.user, results=results)
return Response(results, status=status.HTTP_200_OK)
else:
return Response({'error': 'Invalid JSON received.'}, status=status.HTTP_400_BAD_REQUEST)
对于上面的示例,我希望可浏览的 API 在原始数据选项卡的内容字段中显示空 JSON:
{
"text": ""
}
有没有简单的方法可以做到这一点?
解决方案
推荐阅读
- ruby-on-rails-3 - 设计 gem - 密码中不允许有特殊字符
- java - 执行 jar 文件时出现 NoSuchFileException 错误
- python - 在 Tkinter 的现有窗口中按下按钮时创建一个新窗口
- html - 溢出 - 隐藏滚动条并禁用滚动但不剪切元素
- python - 为什么我的 Pygame 窗口只显示几秒钟?
- python - 从文本文件配置标签时出错
- html - 在打开带有 javascript 的 .hta 时遇到了一些麻烦
- ios - 是否可以将 Decodable 与 Firestore 时间戳/日期一起使用?
- python - Python 错误——赋值前的局部变量引用
- azure - Azure 函数发布失败 - 找不到依赖项目 CS0246 中引用的任何文件