[Checkins] SVN: grok/trunk/src/grok/ make the default view for grok.Model be 'index'

Wolfgang Schnerring wosc at wosc.de
Tue Oct 17 04:13:27 EDT 2006


Log message for revision 70734:
  make the default view for grok.Model be 'index'

Changed:
  U   grok/trunk/src/grok/_grok.py
  U   grok/trunk/src/grok/ftests/view/index.py

-=-
Modified: grok/trunk/src/grok/_grok.py
===================================================================
--- grok/trunk/src/grok/_grok.py	2006-10-17 07:52:51 UTC (rev 70733)
+++ grok/trunk/src/grok/_grok.py	2006-10-17 08:13:26 UTC (rev 70734)
@@ -20,9 +20,10 @@
 from zope.dottedname.resolve import resolve
 from zope import component
 from zope import interface
+from zope.component.interfaces import IDefaultViewName
 from zope.security.checker import defineChecker, getCheckerForInstancesOf, NoProxy
 from zope.publisher.browser import BrowserPage
-from zope.publisher.interfaces.browser import IDefaultBrowserLayer
+from zope.publisher.interfaces.browser import IDefaultBrowserLayer, IBrowserRequest
 from zope.pagetemplate import pagetemplate
 from zope.app.pagetemplate.engine import TrustedAppPT
 
@@ -82,6 +83,12 @@
 
 AMBIGUOUS_CONTEXT = object()
 def grok(dotted_name):
+    # register the name 'index' as the default view name
+    # TODO this needs to be moved to grok startup time (similar to ZCML-time)
+    component.provideAdapter('index',
+                             adapts=(Model, IBrowserRequest),
+                             provides=IDefaultViewName)
+
     # TODO for now we only grok modules
     module = resolve(dotted_name)
 

Modified: grok/trunk/src/grok/ftests/view/index.py
===================================================================
--- grok/trunk/src/grok/ftests/view/index.py	2006-10-17 07:52:51 UTC (rev 70733)
+++ grok/trunk/src/grok/ftests/view/index.py	2006-10-17 08:13:26 UTC (rev 70734)
@@ -7,7 +7,7 @@
   >>> from zope.testbrowser.testing import Browser
   >>> browser = Browser()
   >>> browser.handleErrors = False
-  >>> browser.open("http://localhost/manfred/@@painting")
+  >>> browser.open("http://localhost/manfred")
   >>> print browser.contents
   <html>
   <body>
@@ -21,7 +21,7 @@
 class Mammoth(grok.Model):
     pass
 
-painting = grok.PageTemplate("""\
+index = grok.PageTemplate("""\
 <html>
 <body>
 <h1>Hello, world!</h1>



More information about the Checkins mailing list