all'interno della definizione di un content type del tipo:

class mycontent(base.ATCTContent):
        [omissis]

che differenza c'è tra il definire il parametro schema in questi due modi?

1) modo "classico"

        schema = mycontentSchema

2) modo "alternativo"

        def __init__(self, oid, **kw):
                base.ATCTContent.__init__(self, oid, **kw)
                self.addSchema()

        def addSchema(self, schema=mycontentSchema):
                self.schema = schema

sproloquio di testo a parte ci deve essere una differenza concettuale
che mi sfugge perché nel secondo caso al momento di istanziare un nuovo
documento non compaiono i campi definiti nello schema e se provo a
salvare lo stesso un documento ottengo questo errore:

2010-06-30 17:26:41 ERROR Zope.SiteErrorLog
http://gwserver:3031/spturismo/it/prova-30062010/gg-1/base_view
Traceback (innermost last):
    Module ZPublisher.Publish, line 119, in publish
    Module ZPublisher.mapply, line 88, in mapply
    Module ZPublisher.Publish, line 42, in call_object
    Module Shared.DC.Scripts.Bindings, line 313, in __call__
    Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
    Module Products.CMFCore.FSPageTemplate, line 216, in _exec
    Module Products.CMFCore.FSPageTemplate, line 155, in pt_render
    Module Products.PageTemplates.PageTemplate, line 89, in pt_render
    Module zope.pagetemplate.pagetemplate, line 117, in pt_render
     - Warning: Macro expansion failed
     - Warning: exceptions.KeyError: 'macro'
    Module zope.tal.talinterpreter, line 271, in __call__
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 891, in do_useMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 957, in do_defineSlot
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 861, in do_defineMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 957, in do_defineSlot
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 525, in do_optTag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 949, in do_defineSlot
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 861, in do_defineMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 891, in do_useMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 824, in do_loop_tal
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 855, in do_condition
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 891, in do_useMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 891, in do_useMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 855, in do_condition
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 855, in do_condition
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 891, in do_useMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 891, in do_useMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 536, in do_optTag_tal
    Module zope.tal.talinterpreter, line 521, in do_optTag
    Module zope.tal.talinterpreter, line 516, in no_tag
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 861, in do_defineMacro
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 957, in do_defineSlot
    Module zope.tal.talinterpreter, line 346, in interpret
    Module zope.tal.talinterpreter, line 586, in do_setLocal_tal
    Module zope.tales.tales, line 696, in evaluate
     - URL:
file:/apps/zope/turismolaspezia/parts/plone/Archetypes/skins/archetypes/widgets/selection.pt
     - Line 23, Column 12
     - Expression: <PythonExpr accessor()>
     - Names:
        {'container': <PloneSite at /spturismo>,
         'context': <layerconf at /spturismo/it/prova-30062010/gg-1>,
         'default': <object object at 0xb7d88520>,
         'here': <layerconf at /spturismo/it/prova-30062010/gg-1>,
         'loop': {u'field':
<Products.PageTemplates.Expressions.PathIterator object at 0xef33a6c>},
         'nothing': None,
         'options': {'args': ()},
         'repeat': <Products.PageTemplates.Expressions.SafeMapping object
at 0xeba4b6c>,
         'request': <HTTPRequest,
URL=http://gwserver:3031/spturismo/it/prova-30062010/gg-1/base_view>,
         'root': <Application at >,
         'template': <FSPageTemplate at /spturismo/base_view used for
/spturismo/it/prova-30062010/gg-1>,
         'traverse_subpath': [],
         'user': <PropertiedUser 'admin'>}
    Module Products.PageTemplates.ZRPythonExpr, line 49, in __call__
     - __traceback_info__: accessor()
    Module PythonExpr, line 1, in <expression>
TypeError: 'NoneType' object is not callable


Ogni suggerimento sarà graditissimo

grazie per l'attenzione

        Manuele
_______________________________________________
Plone-IT mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/plone-it
http://www.nabble.com/Plone---Italy-f21728.html

Rispondere a