Hi,

thanks to Phillips book and the help from this list, I managed to write some usable content objects, to implement some views and to skin this views. Now I have a new problem:

I have implemented IArticle, IArticleFolder, IProject and IProjectFolder. IArticle and IProject are simple content interfaces which work so far. The folder interfaces are simply derived from IFolder. They have constraints, so that only the correct types can be inserted.

Now I try to implement IWorkspace, which should have a property 'projects' being an IProjectFolder instance and a property 'articles' being an IArticleFolder.

My current version looks like this:

class IWorkspace(Interface):
    title = TextLine(
       title=u"Title",
       description=u"The title",
       default=u"Workspace",
       required=True)

    projects = Dict(
        key_type=Id(title=u"ID",description=u"xxx"),
        value_type=Object(title=u"Object",description=u"xxx"),
        title=u"Projects",
        description=u"Projects in this workspace")

    articles = Dict(...)

When I try to start Zope, I get the following error message:

ZopeXMLConfigurationError: File "C:\...\configure.zcml", line 3.4-3.100
  TypeError: __init__() takes exactly 2 non-keyword arguments (1 given)

The matching line in configure.zcml looks like this:

<interface interface=".interfaces.IWorkspace" type="zope.app.content.interfaces.IContentType" />

I have no problem reading code, but I don't know how to figure out which __init__ causes the error. Neither Dict, nor Id or Object seem to have a __init__ which might cause this message!?

Can somebody enlighten me? Am I thinking in the wrong direction? Is there a better way to combine content objects? Any hint is very welcome?

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

Reply via email to