Grok-like layer for Zope 2
Project description
five.grok
Introduction
five.grok is a development layer for Zope 2, based on Grok framework concepts.
The development techniques are similar to the ones used with Grok framework.
It is based on grokcore namespace packages that were factored out of Grok framework.
Implemented features
Coming from Grok, the following components are available to Zope 2 developers:
Zope 3 Component (Adapter, Global utilities, Subscribers),
Permissions,
Views and Viewlets,
Skins and resources directories,
Page Templates (using the Zope 2 Page Templates),
Formlib forms,
Local sites and local utilities,
Annotations.
All those components are available with exactly the same syntax than in grok. You just have to do:
from five import grok
Instead of:
import grok
Installation
After adding the dependency to five.grok in your project, you have to load the following ZCML:
<include package="five.grok" />
Note
five.grok have some dependencies on Zope 3 eggs. With Zope 2, you can fake those dependencies in buildout with the help of plone.recipe.zope2instance.
The minium required configuration to install Zope would be:
[zope2] recipe = plone.recipe.zope2install url = http://www.zope.org/Products/Zope/2.10.9/Zope-2.10.9-final.tgz skip-fake-eggs = zope.app.publisher zope.component zope.i18n zope.interface zope.testing
And for this release we recommend to pin down the following version in your buildout:
grokcore.annotation = 1.0.1 grokcore.component = 1.7 grokcore.formlib = 1.4 grokcore.security = 1.2 grokcore.site = 1.0.1 grokcore.view = 1.12.1 grokcore.viewlet = 1.3 five.localsitemanager = 1.1 martian = 0.11 zope.app.publisher = 3.5.1 zope.app.zcmlfiles = 3.4.3 zope.component = 3.4.0 zope.i18n = 3.4.0 zope.interface = 3.4.1 zope.schema = 3.4.0 zope.securitypolicy = 3.4.1 zope.testing = 3.7.6
Zope 2.10 is required as bare minimum.
More information
You can refer to the Grok website: http://grok.zope.org/, and the Grok documentation: http://grok.zope.org/documentation/.
You can check the doctest included in sources as well.
Changelog
1.0 (2009-09-17)
Define an IFiveGrokAPI. [thefunny42]
Fix the broken url method on views. [thefunny42]
Reverted the CodeView base class, see grokcore.view changelog for more details.
CodeView is still available as a backwards compatibility alias for View. Please update all references to CodeView to View. [vincentfretin]
1.0b2 (2009-07-21)
Added dependency on grokcore.view 1.9, grokcore.viewlet 1.1 and grokcore.formlib 1.2, and support for the new CodeView from grokcore.View. [optilude]
1.0b1 (2009-06-30)
Added support for annotations with grokcore.annotation. [thefunny42]
Added support for local site and utilities with grokcore.site. [thefunny42]
Fix grok.EditForm when used with grokcore.formlib 1.1. The Apply action was gone. [thefunny42]
Let static resource directories allow access to unprotected subattributes to avoid authorisation problems when accessing them from protected code. [optilude]
Do not create static resource directories if the ‘static’ directory does not actually exist. [optilude]
1.0a2 (2008-11-23)
Added support for viewlets with grokcore.viewlet. [thefunny42]
Added support for the DirectoryResource component (new in grokcore.view 1.2). [thefunny42]
Added support for using Zope 2 templates by default when doing from five import grok and using grok.PageTemplateFile (being consistent with grok.PageTemplate). [thefunny42]
Added a convenient grok.Container. [thefunny42]
Fix AutoFields (and form grokker) not to include OFS Zope 2 defined fields by default. This use to add a lot of buggy and wanted fields. [thefunny42]
1.0a1 (2008-10-22)
Added support for formlib forms with grokcore.formlib. [thefunny42]
Added support for static resource directory. [thefunny42]
Added support for inline templates and made Zope 2 template semantics the default when doing from five import grok and using grok.PageTemplate. [optilude]
Added override to make templates use Five’s ViewPageTemplateFile instead of the one from zope.app.pagetemplate. [optilude]
Added grokcore.view support with tests. [regebro, jfroche, gotcha et al.]
Added tests for grok.subscriber directive. [kamon]
Initial release (tests for adapters and utilities, initial support for views). [regebro, gotcha]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.