Skip to content
forked from comger/kpages

api-centric web application framework for the Tornado and Mongodb

License

Notifications You must be signed in to change notification settings

ouyangtest/kpages

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#kpages

######kpages is mini helper for tornado,Contains the address routing management,tornado and app config management, mongodb, redis connection management and other functions; these things can help you quickly build a web application.

######基于Tornado的开发包,提供地址路由、配置、测试、性能分析、数据库及内存连接上下文管理等,如果你想用Tornado提供一些高性能的服务接口,这会给你很大的帮助的。

##router

restful/index.py(add @url to class , kpages will route url to this handler)

from kpages import url

@url(r'/',0)
@url(r'/home',2)
class HomeHandler(RequestHandler):
    def get(self):
        self.write('hello word')

setting.py(config for tornado and you app, use conf.xxxx to get you config value )

ACTION_DIR = 'restful'
DEBUG = True
PORT= 8989

app.py

from kpages import run

def callback(app):
    pass

if __name__ == '__main__':
    run(callback)

How to use mongo and redis context?

from kpages import get_context, LogicContext,mongo_conv

with LogicContext():
    db = get_context().get_mongo()
    cache = get_context().get_cache()
    lst = list(db['table'].find().limit(10))
    lst = mongo_conv(lst)

How to use context in hander?

from kpages import ContextHandler

@url(r'/context/demo')
class DemoHandler(ContextHandler,tornado.web.RequestHandler):
    def get(self):
        db = get_context().get_mongo('dbname')
        val = self.session(key)
        self.session(key,val)

test commend

run_test(test_city.DemoCase.testprint) :test testprint method
run_test(test_city.DemoCase)           :test methods in DemoCase class
run_test(test_city)                    :test methods in test_city.py
run_test(all )                         :test methods in app's __conf__.UTEST_DIR

pro commend

pro_test(test_city.DemoCase.testprint) :profile testprint method
pro_test(test_city.DemoCase)           :profile methods in DemoCase class
pro_test(test_city)                    :profile methods in test_city.py
pro_test(all)                          :profile methods in app's __conf__.UTEST_DIR

About

api-centric web application framework for the Tornado and Mongodb

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published