diff options
| author | Chris McDonough <chrism@agendaless.com> | 2008-07-07 05:07:09 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2008-07-07 05:07:09 +0000 |
| commit | 8251b8af234bfa172316d19350309728d89473e1 (patch) | |
| tree | 2eec8a409d50ee3997312d17a4536e8ffeab754b /repoze/bfg/sampleapp | |
| parent | 7de404bb4af2744a64c13e31a780fc0229b8f9e5 (diff) | |
| download | pyramid-8251b8af234bfa172316d19350309728d89473e1.tar.gz pyramid-8251b8af234bfa172316d19350309728d89473e1.tar.bz2 pyramid-8251b8af234bfa172316d19350309728d89473e1.zip | |
Add a sample app.
Diffstat (limited to 'repoze/bfg/sampleapp')
| -rw-r--r-- | repoze/bfg/sampleapp/__init__.py | 1 | ||||
| -rw-r--r-- | repoze/bfg/sampleapp/app.py | 52 |
2 files changed, 53 insertions, 0 deletions
diff --git a/repoze/bfg/sampleapp/__init__.py b/repoze/bfg/sampleapp/__init__.py new file mode 100644 index 000000000..ef5fe8b12 --- /dev/null +++ b/repoze/bfg/sampleapp/__init__.py @@ -0,0 +1 @@ +# a package diff --git a/repoze/bfg/sampleapp/app.py b/repoze/bfg/sampleapp/app.py new file mode 100644 index 000000000..dbc77d501 --- /dev/null +++ b/repoze/bfg/sampleapp/app.py @@ -0,0 +1,52 @@ +from zope.interface import classProvides +from zope.interface import implements +from zope.interface import Interface + +from repoze.bfg.interfaces import IViewFactory +from repoze.bfg.interfaces import IView + +from webob import Response + +class IBlogModel(Interface): + pass + +class BlogModel: + implements(IBlogModel) + +class BlogDefaultView(object): + classProvides(IViewFactory) + implements(IView) + + def __init__(self, context, request): + self.context = context + self.request = request + + def __call__(self): + return Response('Hello world!') + +class BlogWooHooView(object): + classProvides(IViewFactory) + implements(IView) + + def __init__(self, context, request): + self.context = context + self.request = request + + def __call__(self): + return Response('Woo hoo!') + +if __name__ == '__main__': + from repoze.bfg.interfaces import IViewFactory + from repoze.bfg.interfaces import IRequest + from zope.component import getGlobalSiteManager + gsm = getGlobalSiteManager() + gsm.registerAdapter(BlogDefaultView, (IBlogModel, IRequest), IViewFactory) + gsm.registerAdapter(BlogWooHooView, (IBlogModel, IRequest), IViewFactory, + name='woohoo.html') + from repoze.bfg.router import make_app + def get_root(environ): + return {'blog':BlogModel()} + app = make_app(get_root) + from paste import httpserver + httpserver.serve(app, host='0.0.0.0', port='5432') + |
