Implement the endpoint decorator. This allows you to easily map views to endpoints when using the werkzeug routing.

Signed-off-by: Armin Ronacher <armin.ronacher@active-4.com>
This commit is contained in:
mvantellingen 2011-01-23 13:31:02 +01:00 committed by Armin Ronacher
parent 8a73097fe5
commit b0ca7e5af1
3 changed files with 46 additions and 0 deletions

View file

@ -124,6 +124,7 @@ class Module(_PackageBoundObject):
self.name = name
self.url_prefix = url_prefix
self.subdomain = subdomain
self.view_functions = {}
self._register_events = [_register_module(self, static_path)]
def route(self, rule, **options):
@ -157,6 +158,13 @@ class Module(_PackageBoundObject):
view_func, **options)
self._record(register_rule)
def endpoint(self, endpoint):
"""Like :meth:`Flask.endpoint` but for a module."""
def decorator(f):
self.view_functions[endpoint] = f
return f
return decorator
def before_request(self, f):
"""Like :meth:`Flask.before_request` but for a module. This function
is only executed before each request that is handled by a function of