龙卷风关闭 include_version static_url()

Tornado turning off include_version for static_url()

我想在调用 static_url() 时关闭 ?v= 版本信息。

我有以下 staticFileHandler class,我尝试覆盖 make_static_url() class 方法:

class BaseHandlerStatic(tornado.web.StaticFileHandler):
   @classmethod
   def make_static_url(cls, settings, path, include_version=False):
      super().make_static_url(settings, path, include_version)

不幸的是,这样做会导致我的程序崩溃并出现 500 个错误:

"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/tornado-4.5.dev1-py3.5-macosx-10.6-intel.egg/tornado/web.py", line 1342, in static_url
        return base + get_url(self.settings, path, **kwargs)
    TypeError: Can't convert 'NoneType' object to str implicitly
[E 170213 16:23:32 web:1977] 500 GET / (127.0.0.1) 14.66ms

谁能告诉我我做错了什么以及如何将 include_version 设置为 False?

谢谢

您需要 return 声明:

class BaseHandlerStatic(tornado.web.StaticFileHandler):
   @classmethod
   def make_static_url(cls, settings, path, include_version=False):
      return super().make_static_url(settings, path, include_version)

否则你的 make_static_url returns None 隐含地,并且 base + get_url(...) 表达式抛出一个异常试图连接 baseNone