-
Notifications
You must be signed in to change notification settings - Fork 0
thefunny42/Zeam-Form-Composed
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
================== zeam.form.composed ================== This package let you defines forms containing other forms in `zeam.form.base`_. .. contents:: Example ======= Here a simple example. Let's define a setting form:: from zeam.form import composed, base from zope.interface import Interface class Setting(composed.ComposedForm): composed.context(Interface) label = u"Settings" After, a module can add some mail settings on that screen:: class MailSetting(composed.SubForm): composed.context(MyApplication) composed.view(Setting) composed.order(99) label = u"Mail delivery settings" ... And publications of that application could add some publication settings:: class PublicationSetting(composed.SubForm): composed.context(MyPublications) composed.view(Setting) composed.order(10) label = u"Publication settings" ... Some default templates are included as well, but you can replace like you will do in `zeam.form.base`_. API === Classes ------- ``ComposedForm`` This class define a form which able to contain other forms. It behave like a ``zeam.form.base`` Form, but does use its fields. A usefull method can give you back a given subform : ``getSubForm(identifier)``. ``SubForm`` This class represent a form which is contained inside a ``ComposedForm``. This form behave exactly like a ``zeam.form.base`` Form to which you add: - a method ``available()`` which is called before anything else to know if the form shoud still be included in the ``ComposedForm``. - a method ``getComposedForm()`` that gives you back the composed form in which this form is rendered. ``SubFormGroup`` This class let you group ``SubForm`` together. They are rendered within the group template, and prefixed by the group name. Like a ``SubForm`` they have an ``available()`` and a ``getComposedForm()`` method. It as well have a ``getSubForm(identifier)`` method. Directives ---------- All those directives comes from Grokcore component. Please refer to the `Grok documentation <http://grok.zope.org>`_ for more information. ``context`` Define for which object the form/sub form is available. ``layer`` Define the skin for which the form/sub form is aviable. ``require`` Define a permission need to access the form. ``template`` Define a Grok-like template for the form. After you done that, the Grok template will be look up and used. You can't use anymore a ``megrok.pagetemplate`` template, unless you set ``template=None`` again on your form class. ``view`` On a sub form, define for which form the sub form is available. ``order`` Let you specify a number to sort your sub form afterwards using that setting. .. _zeam.form.base: http://pypi.python.org/pypi/zeam.form.base
About
Composed form support for Zeam Form
Resources
Stars
Watchers
Forks
Packages 0
No packages published