django - 从 Django REST Swagger 中排除端点 HTTP 方法
问题描述
有没有办法只隐藏端点的一些方法而不是整个端点?(例如显示 POST 方法但隐藏 DELETE 方法)
我尝试使用自定义文档的地方AutoSchema
例如像这样的端点
router.register(r'audittrial', AuditTrialViewSet, 'AuditTrial')
将定义以下架构
class AuditTrialCustomView(AutoSchema):
@staticmethod
def get_field(name, required, location, schema, description):
return coreapi.Field(
name=name,
required=required,
location=location,
schema=schema,
description=description
)
def get_manual_fields(self, path, method):
extra_fields = []
if method == 'GET':
extra_fields = [
self.get_field("from", False, "query", coreschema.String(), "Date of the start of the Audit Trial"),
....
]
return extra_fields
有什么方法可以实现吗?
解决方案
DRF 有以下示例 - 看看它是否对您有帮助。
class CustomAutoSchema(AutoSchema):
def get_link(self, path, method, base_url):
# override view introspection here...
@api_view(['GET'])
@schema(CustomAutoSchema())
def view(request):
return Response({"message": "Hello for today! See you tomorrow!"})
所以api_view
装饰师应该帮助你。它将列表中的方法列表作为参数。
推荐阅读
- node.js - 使用 Create React App 和 Plotly.js 时出现内存不足错误
- python-3.x - 窗口没有出现在 Tkinter
- java - 在 docker 容器上运行的 Fabric 客户端应用程序无法连接到 orderer 容器
- jwt - 授权之间的区别:承载
和授权:智威汤逊 ? - python - 将从数据框列获取的参数传递给熊猫方法
- reactjs - 输入字段允许您将计数设置为您使用 Redux 输入的任何数字
- json - 映射动态 JSON:将 Json 数据映射到飞镖颤振中的对象?
- react-native - react-native-tags - (如何在 iOS 上自定义用户输入以“返回”键?)
- python - python2上的pip安装失败
- c++ - 无法使用 clang 格式禁用外部缩进