diff options
| author | Chris McDonough <chrism@agendaless.com> | 2008-07-19 01:17:21 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2008-07-19 01:17:21 +0000 |
| commit | 4df5751de28947538da491dc8ebe0dfb27f742d5 (patch) | |
| tree | 491c7029cb50f4baed54ddf7485b4aa0bb02d739 /repoze/bfg/sampleapp | |
| parent | 7bce0d6d925370dd5721100c28693f806b68344b (diff) | |
| download | pyramid-4df5751de28947538da491dc8ebe0dfb27f742d5.tar.gz pyramid-4df5751de28947538da491dc8ebe0dfb27f742d5.tar.bz2 pyramid-4df5751de28947538da491dc8ebe0dfb27f742d5.zip | |
- 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``.
Diffstat (limited to 'repoze/bfg/sampleapp')
| -rw-r--r-- | repoze/bfg/sampleapp/configure.zcml | 8 | ||||
| -rw-r--r-- | repoze/bfg/sampleapp/models.py | 7 | ||||
| -rw-r--r-- | repoze/bfg/sampleapp/views.py | 20 |
3 files changed, 19 insertions, 16 deletions
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 @@ <!-- the default view for a Blog --> <bfg:view for=".models.IBlog" - factory=".views.blog_default_view" + view=".views.blog_default_view" permission="view" /> <!-- the default view for a BlogEntry --> <bfg:view for=".models.IBlogEntry" - factory=".views.blog_entry_default_view" + view=".views.blog_entry_default_view" permission="view" /> <!-- the add view for a BlogEntry --> <bfg:view for=".models.IBlog" - factory=".views.blog_entry_add_view" + view=".views.blog_entry_add_view" name="add_entry.html" permission="add" /> @@ -34,7 +34,7 @@ <!-- the contents view for any mapping (shows dict members) --> <bfg:view for=".models.IMapping" - factory=".views.contents_view" + view=".views.contents_view" name="contents.html" permission="manage" /> 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) |
