[Repoze-checkins] r1238 - repoze.bfg/trunk/repoze/bfg/sampleapp
Chris McDonough
chrism at agendaless.com
Mon Jul 7 01:15:40 EDT 2008
Author: Chris McDonough <chrism at agendaless.com>
Date: Mon Jul 7 01:15:40 2008
New Revision: 1238
Log:
DRY.
Modified:
repoze.bfg/trunk/repoze/bfg/sampleapp/app.py
Modified: repoze.bfg/trunk/repoze/bfg/sampleapp/app.py
==============================================================================
--- repoze.bfg/trunk/repoze/bfg/sampleapp/app.py (original)
+++ repoze.bfg/trunk/repoze/bfg/sampleapp/app.py Mon Jul 7 01:15:40 2008
@@ -1,6 +1,7 @@
from zope.interface import classProvides
from zope.interface import implements
from zope.interface import Interface
+from zope.interface import Attribute
from repoze.bfg.interfaces import IViewFactory
from repoze.bfg.interfaces import IView
@@ -8,12 +9,14 @@
from webob import Response
class IBlogModel(Interface):
- pass
+ id = Attribute('id')
class BlogModel:
implements(IBlogModel)
+ def __init__(self, id):
+ self.id = id
-class BlogDefaultView(object):
+class View(object):
classProvides(IViewFactory)
implements(IView)
@@ -21,19 +24,17 @@
self.context = context
self.request = request
+class BlogDefaultView(View):
def __call__(self):
- return Response('Hello world!')
+ return Response('Hello world from the blog %s!' % self.context.id)
-class BlogWooHooView(object):
- classProvides(IViewFactory)
- implements(IView)
-
- def __init__(self, context, request):
- self.context = context
- self.request = request
+class BlogWooHooView(View):
+ def __call__(self):
+ return Response('Woo hoo from the blog named %s!' % self.context.id)
+class DefaultView(View):
def __call__(self):
- return Response('Woo hoo!')
+ return Response('Default page, context is %s' % self.context)
if __name__ == '__main__':
from repoze.bfg.interfaces import IViewFactory
@@ -43,9 +44,10 @@
gsm.registerAdapter(BlogDefaultView, (IBlogModel, IRequest), IViewFactory)
gsm.registerAdapter(BlogWooHooView, (IBlogModel, IRequest), IViewFactory,
name='woohoo.html')
+ gsm.registerAdapter(DefaultView, (None, IRequest), IViewFactory, '')
from repoze.bfg.router import make_app
def get_root(environ):
- return {'blog':BlogModel()}
+ return {'blog':BlogModel('myblog')}
app = make_app(get_root)
from paste import httpserver
httpserver.serve(app, host='0.0.0.0', port='5432')
More information about the Repoze-checkins
mailing list