##// END OF EJS Templates
Moved cached function for easier invalidation
Moved cached function for easier invalidation

File last commit:

r134:79a4f9f1 default
r134:79a4f9f1 default
Show More
base.py
27 lines | 948 B | text/x-python | PythonLexer
Marcin Kuzminski
initial commit.
r0 """The base Controller API
Provides the BaseController class for subclassing.
"""
from pylons.controllers import WSGIController
from pylons.templating import render_mako as render
from pylons_app.model import meta
Added repo switcher, in base and long term caching for this.
r107 from beaker.cache import cache_region
from pylons import tmpl_context as c
from pylons_app.model.hg_model import HgModel
Marcin Kuzminski
initial commit.
r0
Moved cached function for easier invalidation
r134 @cache_region('long_term', 'repo_list_2')
def _get_repos():
return [rep['name'] for rep in HgModel().get_repos()]
Marcin Kuzminski
initial commit.
r0 class BaseController(WSGIController):
Added repo switcher, in base and long term caching for this.
r107
Marcin Kuzminski
initial commit.
r0 def __call__(self, environ, start_response):
"""Invoke the Controller"""
# WSGIController.__call__ dispatches to the Controller method
# the request is routed to. This routing information is
# available in environ['pylons.routes_dict']
Moved cached function for easier invalidation
r134 c.repo_list = _get_repos()
Marcin Kuzminski
initial commit.
r0 try:
return WSGIController.__call__(self, environ, start_response)
finally:
fixed sqlalchemy session bug,
r51 meta.Session.remove()