Hi,

I have the this interface

class IWorkspace(Interface):
    title = TextLine(
       title=u"Title",
       description=u"The title",
       default=u"proCoders Workspace",
       required=True)
    projects = Container(title=u"Projects", description=u"xxx")
    articles = Container(title=u"Articles", description=u"xxx")

with the following implementation

class Workspace(Persistent):
    implements(IWorkspace)
    title=u'proCoders workspace'
    projects=None
    articles=None

To set projects and articles I have registered an event subscriber. The handling functions is defined like this:

def onObjectCreated(parent,event):
    if IWorkspace.providedBy(event.object):
        workspace=IWorkspace(event.object)
        workspace.projects=ProjectFolder()
        workspace.articles=ArticleFolder()

I registered an add form with the following zcml statement:

<browser:addform
    label="Add proCoders Article"
    name="AddArticle.html"
    schema="proCoders.interfaces.IArticle"
    content_factory="proCoders.Article.Article"
    permission="zope.ManageContent"
    fields="title"
    />

I added the fields="title" attribute, because I get the following error, if I try to create an instance of Workspace:

ComponentLookupError: ((<zope.schema._bootstrapfields.Container object ...

It's clear to me, that the widgets for projects and articles can not be created, but I tought that if I set fields="title" I will not show them!?

How do I solve this problem? Should I implement a mix-in class for the add view?

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

Reply via email to