From 8f9e8fb178ded11160000c8f89f2a804114399ba Mon Sep 17 00:00:00 2001 From: str4d Date: Wed, 19 Dec 2012 05:28:01 +0000 Subject: [PATCH] Added LazyView from http://flask.pocoo.org/docs/patterns/lazyloading/ to helpers --- i2p2www/helpers.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/i2p2www/helpers.py b/i2p2www/helpers.py index bbd8a656..aabf4a5e 100644 --- a/i2p2www/helpers.py +++ b/i2p2www/helpers.py @@ -1,4 +1,17 @@ from math import ceil +from werkzeug import import_string, cached_property + +class LazyView(object): + def __init__(self, import_name): + self.__module__, self.__name__ = import_name.rsplit('.', 1) + self.import_name = import_name + + @cached_property + def view(self): + return import_string(self.import_name) + + def __call__(self, *args, **kwargs): + return self.view(*args, **kwargs) class Pagination(object): def __init__(self, page, per_page, total_count):