tornado 中一个 handler 如何调用另一个 handler 的 get 方法?

2014-05-27 08:12:35 +08:00
 yibin001
class home(basehandler):
def get(self):
pass

class profile(basehandler):
def get(self):
#如何调用home中的get方法?

Stackoverflow上找了一个问题,回答也是不能直接调用了。
http://stackoverflow.com/questions/22928230/calling-post-method-of-one-class-from-another-classs-post-method
有没有好办法?

ps.如何引用gist?
6202 次点击
所在节点    问与答
12 条回复
CMGS
2014-05-27 08:13:25 +08:00
抽出一个公共函数
yibin001
2014-05-27 08:14:11 +08:00
@CMGS
呃~貌似只能如此了。
cloverstd
2014-05-27 08:14:43 +08:00
用 httpclient 请求你要调用的 get
zhwei
2014-05-27 08:25:33 +08:00
直接重定向不行吗?
chenkun0128
2014-05-27 08:54:32 +08:00
wodemyworld
2014-05-27 08:58:40 +08:00
外包项目随便写,如果将来还得自己维护就少欠技术债,不然将来还得吃自己的屎
yibin001
2014-05-27 09:02:45 +08:00
@chenkun0128
谢谢。
stackpop
2014-05-27 09:33:01 +08:00
requests.get('/handlerURL')
taine
2014-05-27 10:04:00 +08:00
lz,问句题外话,程序中的handler中文名称是什么?处理器,还是处理程序?
yibin001
2014-05-27 11:16:56 +08:00
@taine
处理程序
taine
2014-05-27 12:06:29 +08:00
@yibin001 谢谢!
latyas
2015-07-14 11:03:30 +08:00
from tornado.web import Application, RequestHandler
from tornado.ioloop import IOLoop
from functools import partial


class FuckinHandler(RequestHandler):
def get(self):
func = partial(Handler.get.im_func, self)
func()

class Handler(RequestHandler):
def get(self):
self.write('test')
self.finish()

WEBSERVER_PORT = 10000
application = Application([
(r'/', FuckinHandler),
])

application.listen(WEBSERVER_PORT)
IOLoop.instance().start()

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/114410

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX