Alle mercoledì 19 marzo 2008, Yuri ha scritto:
> Yuri wrote:
> > Salve,
> >
> > sto cercando di implementare un contatore su un Field di un archetype
> > custom.
> >
> > ho scritto:
> >
> >        StringField("n_erbario",
> >                schemata="default",
> >                required=0,
> >                mutator = "setN_erbario",
> >                widget=StringWidget(
> >                        label="Numero Erbario",
> >                        visible={'edit': 'invisible', 'view': 'visible'},
> >                        label_msgid="label_n_erbario",
> >                        description="""Progressivo erbario""",
> >                        i18n_domain="plone",
> >                        size=30,
> >                ),
> >
> > e sotto, nella classe:
> >
> >    security.declareProtected(permissions.ModifyPortalContent,
> > 'setN_erbario')
> >    def setN_erbario(self, value):
> >        """ prendo il valore dal contatore """
> >        v = '100'
> >        self.getField('n_erbario').set(self, v)
> >
> > ma non setta il campo. Da web (oggetto/setN_erbario?value=) funziona,
> > ma da edit no.
>
> Correzione, funziona solo in fase di creazione dell'oggetto, ma non in
> edit.
>
>  È quello che voglio, ma non capisco perchè quando edito la form non lo
> faccia.
>
>  Forse è necessario averlo nella request??
>
> > Idee?

Se lo metti invisibile non viene poi chiamato il metodo mutator.

Fabry


-- 
Fabrizio Reale                               [EMAIL PROTECTED]
Redomino S.r.l.                 Largo Valgioie 14 - 10146 Torino - Italy
Tel: +39 011 7499875 - Fax: +39 011 3716911     http://www.redomino.com/

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

Rispondere a