From ed334fdfefcdfdc570cfcd42aff171b177b76240 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Mon, 14 Jul 2008 18:27:19 +0000 Subject: Render templates explicitly in views. --- repoze/bfg/view.py | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) (limited to 'repoze/bfg/view.py') diff --git a/repoze/bfg/view.py b/repoze/bfg/view.py index 07c3d183d..e2ea156a0 100644 --- a/repoze/bfg/view.py +++ b/repoze/bfg/view.py @@ -1,7 +1,13 @@ -from repoze.bfg.template import render_template +from zope.interface import implements +from zope.interface import classProvides + +from repoze.bfg.interfaces import IView +from repoze.bfg.interfaces import IViewFactory class View(object): """ Convenience base class for user-defined views """ + implements(IView) + classProvides(IViewFactory) def __init__(self, context, request): self.context = context self.request = request @@ -9,19 +15,5 @@ class View(object): def __call__(self, **kw): raise NotImplementedError -class TemplateView(View): - template = None - def __call__(self, **kw): - if self.template is None: - raise ValueError('a "template" attribute must be attached to ' - 'a TemplateView') - return render_template(self, self.template, **kw) - - def __repr__(self): - klass = self.__class__ - return '<%s.%s object at %s for %s>' % (klass.__module__, - klass.__mame__, - id(self), - self.template) -- cgit v1.2.3