繁体   English   中英

Python龙卷风使用带参数的继承

[英]Python tornado use inheritance with parameters

我有一个像这样的基本处理程序类:

class BaseHandler(RequestHandler):
    def get(self, id=None, *args, **kwargs):
        module = self.request.uri.split('/')[1].split('?')[0]

此get方法处理程序由100行代码组成,如您所见,模块是从url获取的。 在某些情况下,我只需要更改模块,而又不想完全重写get方法。
有什么方法可以继承此方法并更改模块吗?

当你的get接受**kwargs ,你可以加入这一行:

module = kwargs.pop("module") or self.request.uri.split('/')[1].split('?')[0]

因此,您可以在子类中继承此方法并更改模块:

module = ...
super(Subclass, self).get(id, *args, module=module, **kwargs)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM