Am Samstag, 11. Februar 2006 14:11 schrieb Florian Lindner:
> > > blablubb is a field of my interface.
> > Of which interface? IRegistrationForm only or also
> > ICentershock? (and no typos? ;-))
> of IRegistrationForm and not of ICentershock
I see... Seems to be OK for what you're wanting to do.
> Note that I don't want to edit an ICentershock object, I don't
> want to edit any kind of object. I just want to create a form
> based on a schema. The schema has no use but to provide the
> fields information for the form. The processing of the data
> entered is done manually in python code.
> registrationForm.html is not a view on a Centershock object.
> It should be a form in which the user can enter data that is
> being processed by the view class and ultimately create an
> user in a PAU utility. The ICentershock objects should server
> as a kind of root object of my application, the object that
> provided all the pages that can't be assigned to an instance
> of an object (like contact information or the powered by Zope
OK, but for EditForm you need an object the fields of the form
can be bound to. If that's not a content object it could just be
Another and probably better way in this case would be not to
derive from EditForm but from Form.
I just have to solve a similar problem and got it working the
following way (IPersonRegistration is the schema for the form,
INode is the interface of something like your Centershock
from zope.formlib.form import Form, FormFields, action
from zope.formlib.i18n import _
form_fields = FormFields(IPersonRegistration)
def handle_edit_action(self, action, data):
print data # here we'll do the real stuff...
As often with Zope 3: simple but not easy (to find out) ;-)
Zope3-users mailing list