这是错误:
TypeError: __init__() takes exactly 1 argument (3 given)
ERROR:root:Exception in callback <tornado.stack_context._StackContextWrapper object at 0x1017d4470>
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/tornado-2.4.1-py2.7.egg/tornado/ioloop.py", line 421, in _run_callback
callback()
File "/Library/Python/2.7/site-packages/tornado-2.4.1-py2.7.egg/tornado/iostream.py", line 311, in wrapper
callback(*args)
File "/Library/Python/2.7/site-packages/tornado-2.4.1-py2.7.egg/tornado/httpserver.py", line 268, in _on_headers
self.request_callback(self._request)
File "/Library/Python/2.7/site-packages/tornado-2.4.1-py2.7.egg/tornado/web.py", line 1395, in __call__
handler = spec.handler_class(self, request, **spec.kwargs)
TypeError: __init__() takes exactly 1 argument (3 given)
这是代码:
class IndexHandler(tornado.web.RequestHandler):
def __init__(self):
self.title = "Welcome!"
def get(self):
self.render("index.html", title=self.title)
我已将代码简化为上述代码,但我对为什么会产生该错误感到困惑。我一定是做错了什么,但我不知道是什么(通过了 3 个参数???...嗯?)
注意:title
变量只是<title>{{ title }}</title>
我的 index.html 模板中的变量。
我正在运行 32 位版本的 Python 2.7.3,以便与 Mysqldb-Python 一起使用。如您所见,我的 Tornado 版本是 2.4.1。我也在 OSX Lion 上运行(如果这有什么不同的话......)也许是一个最终产生这个错误的兼容性问题?
调试此过程中的所有帮助表示赞赏。谢谢你。