if delta < 86400: return u'%s小时前' % (delta // 3600) if delta < 604800: return u'%s天前' % (delta // 86400) dt = datetime.fromtimestamp(t) return u'%s年%s月%s日' % (dt.year, dt.month, dt.day) # init db: db.create_engine(**configs.db) # init wsgi app: wsgi = WSGIApplication(os.path.dirname(os.path.abspath(__file__))) template_engine = Jinja2TemplateEngine( os.path.join(os.path.dirname(os.path.abspath(__file__)), 'templates')) template_engine.add_filter('datetime', datetime_filter) wsgi.template_engine = template_engine import urls wsgi.add_interceptor(urls.user_interceptor) wsgi.add_interceptor(urls.manage_interceptor) wsgi.add_module(urls) if __name__ == '__main__': wsgi.run(9000, host='0.0.0.0') else: application = wsgi.get_wsgi_application()
from config import configs from filters import datetime_filter, rssdate_filter, markdown_filter # 初始化数据库 db.create_engine(**configs['db']) # 创建一个WSGIApplication wsgi = WSGIApplication(os.path.dirname(os.path.abspath(__file__))) # 初始化Jinja2模版引擎 template_engine = Jinja2TemplateEngine(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'templates')) # 把filter添加到jinja2,filter本身是一个函数对象 template_engine.add_filter('datetime', datetime_filter) template_engine.add_filter('rssdate', rssdate_filter) template_engine.add_filter('html', markdown_filter) wsgi.template_engine = template_engine # 加载url中的函数 import urls wsgi.add_interceptor(urls.user_interceptor) wsgi.add_interceptor(urls.manage_interceptor) wsgi.add_model(urls) # 在9000端口启动wsgi if __name__ == '__main__': wsgi.run(9000) else: application = wsgi.get_wsgi_application()
class TemplateEngine(object): def __call__(self, path, model): return '<!-- override this method to render template -->' class Jinja2TemplateEngine(TemplateEngine): def __init__(self, templ_dir, **kw): from jinja2 import Environment, FileSystemLoader if not 'autoescape' in kw: kw['autoescape'] = True self._env = Environment(loader=FileSystemLoader(templ_dir), **kw) def add_filter(self, name, fn_filter): self._env.filters[name] = fn_filter def __call__(self, path, model): return self._env.get_template(path).render(**model).encode('utf-8') # init wsgi app: wsgi = WSGIApplication(os.path.dirname(os.path.abspath(__file__))) template_engine = Jinja2TemplateEngine( os.path.join(os.path.dirname(os.path.abspath(__file__)), 'templates')) wsgi.template_engine = template_engine wsgi.add_module(urls) #把url中的路径-函数,打包成映射关系,路径:route,route是从原python函数 if __name__ == '__main__': wsgi.run(9000, host='0.0.0.0') #自己运行,使用内置的web服务器 else: application = wsgi.get_wsgi_application() #传递给其他模块
def __call__(self, path, model): return "<!-- override this method to render template -->" class Jinja2TemplateEngine(TemplateEngine): def __init__(self, templ_dir, **kw): from jinja2 import Environment, FileSystemLoader if not "autoescape" in kw: kw["autoescape"] = True self._env = Environment(loader=FileSystemLoader(templ_dir), **kw) def add_filter(self, name, fn_filter): self._env.filters[name] = fn_filter def __call__(self, path, model): return self._env.get_template(path).render(**model).encode("utf-8") # init wsgi app: wsgi = WSGIApplication(os.path.dirname(os.path.abspath(__file__))) template_engine = Jinja2TemplateEngine(os.path.join(os.path.dirname(os.path.abspath(__file__)), "templates")) wsgi.template_engine = template_engine wsgi.add_module(urls) # 把url中的路径-函数,打包成映射关系,路径:route,route是从原python函数 if __name__ == "__main__": wsgi.run(9000, host="0.0.0.0") # 自己运行,使用内置的web服务器 else: application = wsgi.get_wsgi_application() # 传递给其他模块
''' import logging; logging.basicConfig(level=logging.INFO) import os from transwarp import db from transwarp.web import WSGIApplication, Jinja2TemplateEngine from config import configs # init db: db.create_engine(**configs.db) # init wsgi app: wsgi = WSGIApplication(os.path.dirname(os.path.abspath(__file__))) template_engine = Jinja2TemplateEngine(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'templates')) wsgi.template_engine = template_engine import urls wsgi.add_module(urls) if __name__ == '__main__': wsgi.run(9000) else: import sae application = sae.create_wsgi_app(wsgi.get_wsgi_application(debug=False))