Import 带有Tornado web服务器的外部页面

Import 带有Tornado web服务器的外部页面,import,handler,tornado,Import,Handler,Tornado,我在Python页面中有一个处理程序,它是按照Tornado web服务器的指导方针编写的。我想把这个处理程序放在另一个页面中,它总是与Tornado的python主页面链接 这样,我可以创建一个新页面,这样我就可以有一个好的项目,而不是一个千篇一律的页面 多谢各位 class BaseHandler(tornado.web.RequestHandler): @tornado.web.removeslash def get_current_user(self):

我在Python页面中有一个处理程序,它是按照Tornado web服务器的指导方针编写的。我想把这个处理程序放在另一个页面中,它总是与Tornado的python主页面链接

这样,我可以创建一个新页面,这样我就可以有一个好的项目,而不是一个千篇一律的页面

多谢各位

class BaseHandler(tornado.web.RequestHandler):
    @tornado.web.removeslash
    def get_current_user(self):
         return self.get_secure_cookie("mechtari")
    @property 
    def db(self):
        if not hasattr(BaseHandler,"_db"):
            _db = pymongo.Connection().essog
            return _db
    @property
    def fs(self):
        if not hasattr(BaseHandler,"_fs"):
            _fs = gridfs.GridFS(self.db)
            return _fs
现在我要做的所有事情都将从这个处理程序继承:

class LoginHandler(BaseHandler):
    def post(self):
    # do a database search, so i need to connect to database, so no need to the database everytime and make the connection.


class AchatsHandler(BaseHandler):
    @tornado.web.authenticated
    def get(self):
        # render me a page that requires a user to be authentificated, so i always use the base handler
在url规范中,您只需要精确定义类的名称以将它们绑定到url

urls = [
(r"/login", handlers.LoginHandler),
(r"/achats/*", handlers.AchatsHandler),
]

看看,url词汇表中没有BaseHandler

如果您谈论处理程序,那么使用对象继承NewHandler(OldHandler),但所有初始配置?我只在外部页面中编写新的处理程序??你是说使用tornado的多域(example1.com example2.com,具有相同的tornado实例)?不,我是说在tornado中调用处理程序的同一个实例,该处理程序在另一个页面中,而不是在tornado的主页中,我将所有的定义、导入和类应用程序放在那里。。。对不起,我的重点是面向对象编程继承:这对于不重复代码特别有用:p