summaryrefslogtreecommitdiff
path: root/repoze/bfg/view.py
diff options
context:
space:
mode:
Diffstat (limited to 'repoze/bfg/view.py')
-rw-r--r--repoze/bfg/view.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/repoze/bfg/view.py b/repoze/bfg/view.py
index 4e5418175..3fd5a8499 100644
--- a/repoze/bfg/view.py
+++ b/repoze/bfg/view.py
@@ -161,14 +161,20 @@ class static(object):
"""
def __init__(self, root_dir, cache_max_age=3600, level=2,
package_name=None):
+ # package_name is for bw compat; it is preferred to pass in a
+ # package-relative path as root_dir
+ # (e.g. ``anotherpackage:foo/static``).
if os.path.isabs(root_dir):
- root_dir = caller_path(root_dir, level=level)
self.app = StaticURLParser(root_dir, cache_max_age=cache_max_age)
+ return
+ if ':' in root_dir:
+ package_name, root_dir = root_dir.split(':', 1)
else:
if package_name is None:
package_name = caller_package().__name__
- self.app = PackageURLParser(package_name, root_dir,
- cache_max_age=cache_max_age)
+
+ self.app = PackageURLParser(package_name, root_dir,
+ cache_max_age=cache_max_age)
def __call__(self, context, request):
subpath = '/'.join(request.subpath)