From 4df5751de28947538da491dc8ebe0dfb27f742d5 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sat, 19 Jul 2008 01:17:21 +0000 Subject: - The concept of "view factories" was removed in favor of always calling a view, which is a callable that returns a response directly (as opposed to returning a view). As a result, the ``factory`` attribute in the bfg:view ZCML statement has been renamed to ``view``. Various interface names were changed also. - ``render_template`` and ``render_transform`` no longer return a Response object. Instead, these return strings. The old behavior can be obtained by using ``render_template_to_response`` and ``render_transform_to_response``. --- repoze/bfg/sampleapp/configure.zcml | 8 ++++---- repoze/bfg/sampleapp/models.py | 7 +++++-- repoze/bfg/sampleapp/views.py | 20 ++++++++++---------- 3 files changed, 19 insertions(+), 16 deletions(-) (limited to 'repoze/bfg/sampleapp') diff --git a/repoze/bfg/sampleapp/configure.zcml b/repoze/bfg/sampleapp/configure.zcml index bd1b46d6a..121566520 100644 --- a/repoze/bfg/sampleapp/configure.zcml +++ b/repoze/bfg/sampleapp/configure.zcml @@ -12,21 +12,21 @@ @@ -34,7 +34,7 @@ diff --git a/repoze/bfg/sampleapp/models.py b/repoze/bfg/sampleapp/models.py index d07110e83..7da6f1033 100644 --- a/repoze/bfg/sampleapp/models.py +++ b/repoze/bfg/sampleapp/models.py @@ -15,8 +15,11 @@ class IBlog(Interface): pass class Blog(dict, Location): - __acl__ = [ (Allow, Everyone, 'view'), (Allow, 'group:editors', 'add'), - (Allow, 'group:managers', 'manage') ] + __acl__ = [ + (Allow, Everyone, 'view'), + (Allow, 'group:editors', 'add'), + (Allow, 'group:editors', 'edit'), + ] implements(IBlog, IMapping, ILocation) class IBlogEntry(Interface): diff --git a/repoze/bfg/sampleapp/views.py b/repoze/bfg/sampleapp/views.py index 5b72c8a28..0f536f09f 100644 --- a/repoze/bfg/sampleapp/views.py +++ b/repoze/bfg/sampleapp/views.py @@ -3,7 +3,7 @@ import time from webob.exc import HTTPFound -from repoze.bfg.template import render_template +from repoze.bfg.template import render_template_to_response from repoze.bfg.sampleapp.models import BlogEntry from repoze.bfg.security import has_permission @@ -27,8 +27,10 @@ def blog_default_view(context, request): } ) - return render_template('templates/blog.pt', name=context.__name__, - entries=entrydata, can_add=can_add) + return render_template_to_response('templates/blog.pt', + name=context.__name__, + entries=entrydata, + can_add=can_add) def blog_entry_default_view(context, request): info = { @@ -38,7 +40,7 @@ def blog_entry_default_view(context, request): 'author':context.author, 'created':datestring(context.created), } - return render_template('templates/blog_entry.pt', **info) + return render_template_to_response('templates/blog_entry.pt', **info) class BlogAddSchema(formencode.Schema): allow_extra_fields = True @@ -50,7 +52,7 @@ def blog_entry_add_view(context, request): params = request.params message = None - + author = params.get('author', '') body = params.get('body', '') title = params.get('title', '') @@ -65,15 +67,13 @@ def blog_entry_add_view(context, request): message = str(why) info['message'] = message else: - author = form['author'] - body = form['body'] - title = form['title'] + author, body, title = form['author'], form['body'], form['title'] new_entry = BlogEntry(title, body, author) name = str(time.time()) context[name] = new_entry return HTTPFound(location='/') - return render_template('templates/blog_entry_add.pt', **info) + return render_template_to_response('templates/blog_entry_add.pt', **info) def contents_view(context, request): - return render_template('templates/contents.pt', context=context) + return render_template_to_response('templates/contents.pt', context=context) -- cgit v1.2.3