Martin Aspeli writes:
> Daniel Nouri <[EMAIL PROTECTED]> writes:
>
>>
>> Robert Niederreiter writes:
>>
>> > Am Mittwoch, den 16.07.2008, 16:24 +0200 schrieb Daniel Nouri:
>> >> Where would we need overrides.zcml?
>>
>> > in the case where ICMFAddForm is no longer my interface to look up. then
>> > i have to overwrite the traverser.
>>
>> Why would ICMFAddForm no longer be the interface to look up? It's the
>> the only type of add form that promises to do something meaningful with
>> the 'portal_type' attribute that's set on it in the traverser.
>
> And even if it weren't - we shouldn't hardcode the traversal
> adapter. We should make this a convenient implementation option. The
> actual URL of the add view should configurable via a TALES expression,
> which means that it can be written without the @@add bit.
A convenient implementation option that the CMF types will need to use:
Their forms will need to depend on the @@add bit to tell them about the
portal_type. Otherwise, if you make a copy of one of those types,
you'll end up with a form for them that creates objects of the original
type.
class ICMFAddForm(Interface):
portal_type = Attribute("Name of portal_type that I'm to create")
def __call__():
"""Returns HTML"""
This should be enough as a contract for our little forms, right?
Daniel
_______________________________________________
Zope-CMF maillist - [email protected]
http://mail.zope.org/mailman/listinfo/zope-cmf
See http://collector.zope.org/CMF for bug reports and feature requests