django - 使用 ModelViewSet 在 URL 中传递自定义参数
问题描述
使用 a传递参数ModelViewSet
的最佳方法是什么?例如实现这样的事情:
http://127.0.0.1:8000/api/v1/financing-settings/template/?param=block
下面是我使用的方法,但发现我已经在正文部分设置了参数,但这不是我想要的:
class TemplateView(ModelViewSet):
"""ViewSet for Saving Block/ Step template."""
def list(self, request, *args, **kwargs):
"""Get list of Block/Steps with is_process_template is equal to True."""
param = request.data['param']
if param == "block":
_block = Block.objects.filter(is_process_template=True).values()
return JsonResponse({"data": list(_block)}, safe=False, status=200)
elif param == "step":
_step = Step.objects.filter(is_process_template=True).values()
return JsonResponse({"data": list(_step)}, safe=False, status=200)
return Response(status=status.HTTP_204_NO_CONTENT)
解决方案
param = request.GET.get('param')
或发帖请求
param = request.POST.get('param')
推荐阅读
- node.js - 在 RollupJS 中将 UMD 模块转换为 ES 模块(“请求的模块 X 不提供名为‘default’的导出”)
- android - 第二页立即加载,而其他页面根本不加载。第 3 页
- c# - 为接口中的所有成员检索隐式分配的 dispId 值
- node.js - Oauth 2.0 在服务器上进行身份验证后重定向到应用程序
- spring-data - 我可以忽略 CreatedDate 注释并将其插入 spring data mongodb 吗?
- r - MODISTools mt_subset() 警告/错误 - 曾经有效的代码现在无效
- vb.net - Webview2 AdditionalBrowserArguments --Kiosk-printing
- amazon-web-services - 如何在 AWS SNS 中设置免费电话号码而不是默认号码?
- gitlib - 如何使用 gitlib 列出所有提交?
- c++ - 如何实现两个 std::map 的乘法合并
?