如何继承一个没有装饰器的烧瓶MethodView类?

时间:2017-01-14 16:54:31

标签: python api inheritance flask decorator

出于不重写相同API的原因。我想从已创建的MethodView忽略 login_required 装饰器继承get方法。

class DoStuffA(MethodView):
    decorators = [login_required]
    def get(self):
        return jsonify({"status":"ok"})

api.add_url_rule('/dostufa', view_func=DoStuffA.as_view("dostuffa"), methods=['GET'])

class DoStuffB(DoStuffA):
    pass

api.add_url_rule('/dostuffb', view_func=DoStuffB.as_view("dostuffb"), methods=['GET'])

如果我向/dostuffb发送GET请求,

  1. 是否需要进行身份验证?

  2. 我的继承语法是否正确?

1 个答案:

答案 0 :(得分:2)

<!DOCTYPE html>列表仅在调用var a = "xyaabbbccccdefww"; var b = "xxxxyyyyabklmopq"; var mySet = new Set(a.split("").concat(b.split(""))); var result = Array.from(mySet).sort().join(""); console.log(result);方法时应用。如果您不希望在子类中应用任何装饰器,只需使用空序列覆盖该属性:

View.decorators

现在View.as_view()将找到空元组而不是继承的class DoStuffB(DoStuffA): decorators = () # empty tuple 列表,并且不会应用装饰器。

相关问题