summaryrefslogtreecommitdiff
path: root/repoze/bfg/view.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-10-18 02:27:43 +0000
committerChris McDonough <chrism@agendaless.com>2009-10-18 02:27:43 +0000
commit2cce431f02a37c119eacfc3dfa94af9fe3305de1 (patch)
treef154dbf4937afb3f5d08ed497f6c4cac6f843144 /repoze/bfg/view.py
parentf276669b505cb0565dcf854f2e0e751151ccf836 (diff)
downloadpyramid-2cce431f02a37c119eacfc3dfa94af9fe3305de1.tar.gz
pyramid-2cce431f02a37c119eacfc3dfa94af9fe3305de1.tar.bz2
pyramid-2cce431f02a37c119eacfc3dfa94af9fe3305de1.zip
- More than one ``@bfg_view`` decorator may now be stacked on top of
any number of others. Each invocation of the decorator registers a single view. For instance, the following combination of decorators and a function will register two views:: from repoze.bfg.view import bfg_view @bfg_view(name='edit') @bfg_view(name='change') def edit(context, request): pass This makes it possible to associate more than one view configuration for a single callable without requiring ZCML.
Diffstat (limited to 'repoze/bfg/view.py')
-rw-r--r--repoze/bfg/view.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/repoze/bfg/view.py b/repoze/bfg/view.py
index d6c47ec0f..7f71f2c57 100644
--- a/repoze/bfg/view.py
+++ b/repoze/bfg/view.py
@@ -394,7 +394,9 @@ class bfg_view(object):
self.header = header
def __call__(self, wrapped):
- wrapped.__bfg_view_settings__ = self.__dict__.copy()
+ settings = getattr(wrapped, '__bfg_view_settings__', [])
+ settings.append(self.__dict__.copy())
+ wrapped.__bfg_view_settings__ = settings
return wrapped
def default_view(context, request, status):