[Zope3-Users] Schema fields vs custom metadata
Svenn Helge Grindhaug
Svenn.Helge.Grindhaug at bccs.uib.no
Fri Feb 23 14:17:13 EST 2007
On Friday 23 February 2007 19:29:10 you wrote:
> On 2/23/07, Svenn Helge Grindhaug <Svenn.Helge.Grindhaug at bccs.uib.no> wrote:
> > I tried different ways of adding the permissions for IWriteContainer and
> > IReadContainer without any luck. Can you tell me how to combine those and
> > the permissions for ICourse schema.
>
> This is where I find it easier to keep the specialized parts of the
> interface separate from the other aspects (like IContainer), but
> that's a style issue as much as anything.
Are you talking about the same separation as Christophe did, create a
ICourseDetail in addition to ICourse. That do not change the way the
configuration is done, or does it?
> > <class class=".course.Course">
> > <implements
> > interface=".interfaces.ICourse
> > zope.annotation.interfaces.IAttributeAnnotatable"
> > />
> > <require
> > permission="zope.View"
> > interface=".interfaces.ICourse"
> > />
>
> It's worth knowing that you can specify multiple interfaces here,
> seperated by spaces. You can also combine interface="..." with
> attributes="...".
>
> > <require
> > permission="zope.ManageContent"
> > set_schema=".interfaces.ICourse"
> > />
>
> set_schema can also take multiple, space-separated schema, and
> set_attributes="..." can be included as well.
Like this then?
<class class=".course.Course">
<implements
interface=".interfaces.ICourse
zope.annotation.interfaces.IAttributeAnnotatable"
/>
<require
permission="zope.View"
interface="zope.app.container.interfaces.IReadContainer"
attributes="shortDesc"
/>
<require
permission="zope.ManageContent"
interface="zope.app.container.interfaces.IWriteContainer"
set_attributes="shortDesc"
/>
</class>
Svenn.
More information about the Zope3-users
mailing list