使用基于函数的视图,您可以将视图限制为某些HTTP方法,如:
@api_view(["GET", "POST"])
def view(request):
...
这是整洁和明确的。是否有一种原生方式可以在不诉诸if self.request.method == ...
条件的情况下对通用视图执行相同的操作?
答案 0 :(得分:1)
只需要在通用视图的类中设置http_method_names
属性:
class MyListCreateView(generics.ListCreateAPIView):
http_method_names = ["get", "post"]
...
奇怪的是,http_method_names
未在API指南的Class Based Views或Generic Views部分中与基于类的视图或通用视图相关联。
答案 1 :(得分:1)
是的,只需在标准的Django View中添加:class MyView(ListAPIView):
http_method_names = ['get', 'post']
# ...
:
示例:
window.loadFeatures = function(httpOutPut){
vectorSource.addFeatures(geojsonFormat.readFeatures(response))
};