> I've played with zope.formlib before that. I didn't manage to generate a 
> entire form, just the <input ...> statemenets were generated, without any 
> <html> headers or anything like that. So I need to add them manually with 
> python code or a template. Can you tell me how I can generate a form. 
> Basically the same like the form directive we're talking about all the time.
> 
> 
> Thanks,
> 
> Florian
It's easy. Example:

1) class IMyForm(Interface):
        title = TextLine(...)

2) class MyAddForm(zope.formlib.AddForm):
        form_fields = IMyForm
        
        def create(self, data):
           # create you object from data-dictionary


   class MyEditForm(zope.formlib.EditForm):
        form_fields = IMyForm
        # yes it's all ! ;-)
        
3) in browser.zcml
   
  <page
      name="AddMyObject.html"
      for="zope.app.container.interfaces.IAdding" 
      class=".MyAddForm"
      permission="zope.ManageContent"            
      />
  <page
      name="edit.html"
      for=".IMyObjectInterface"
      class=".MyEditForm"
      permission="zope.ManageContent"            
      />

P.S. you can see usage zope.formlib in 'zsqlmap' (my product, see
zope.org ;-)









_______________________________________________
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users

Reply via email to