[Checkins] SVN: grok/trunk/doc/design/utility.py different idea
about local utilities, by martijn
Philipp von Weitershausen
philikon at philikon.de
Sat Jan 6 08:29:34 EST 2007
Log message for revision 71732:
different idea about local utilities, by martijn
Changed:
U grok/trunk/doc/design/utility.py
-=-
Modified: grok/trunk/doc/design/utility.py
===================================================================
--- grok/trunk/doc/design/utility.py 2007-01-06 11:52:14 UTC (rev 71731)
+++ grok/trunk/doc/design/utility.py 2007-01-06 13:29:33 UTC (rev 71732)
@@ -1,14 +1,31 @@
import grok
-class CalcApp(grok.App):
- """calculator model that's also a site
-
- whenever you create one of those, all local utilities will be
- registered with it automatically.
- """
-
-class Calculator(grok.Utility):
+class Calculator(grok.GlobalUtility):
grok.implements(ICalculator) # if this is not specified, it breaks
grok.name('') # this is actually the default
- grok.register(site=CalcApp) # register this only in calculator app sites
+ grok.utility_provides(ICalculator) # this is actually the default
+grok.global_utility(factory, provides=IFace, name=u'', setup=None)
+
+class Calculator(grok.LocalUtility):
+ grok.utility_provides(ICalculator)
+
+class Anything(grok.Model):
+ pass
+
+class NonPersistent(object):
+ pass
+
+class SpecialAnything(Anything):
+ pass
+
+class Foo(grok.Model, grok.Site):
+ grok.local_utility(Anything, hide=False, name_in_container='foo',
+ persistent=None)
+ grok.local_adapter()
+ grok.local_view()
+
+class Foo2(Foo):
+ grok.local_utility(SpecialAnything)
+
+
More information about the Checkins
mailing list