[Plone-IT] domanda su getField
Riccardo Lemmi
riccardo a reflab.it
Gio 25 Giu 2009 11:48:42 UTC
On Thursday 25 June 2009, Yuri wrote:
> Yuri ha scritto:
> > campi = ['title', 'Rapporto_giornaliero',
> > 'Operatori_cooperativa', 'Problemi_organizzativi',
> > 'Problemi_biblioteca', 'Problemi_allo_stabile', 'Note',
> > 'Utenti_presenti', 'Utenti_apertura_straordinaria',
> > 'Utenti_presenti_1920', 'Utenti_totale', 'Numero_prestiti',
> > 'Numero_restituzioni', 'Numero_rinnovi_straordinaria',
> > 'Numero_prenotazioni']
> >
> > for c in campi:
> > row.append(self.getField(c).get(self))
> >
> > perchè non funziona? :)
> >
> > Mi torna l'errore:
> >
> > * Module Products.Archetypes.Field, line 1989, in get
> >
> > TypeError: eval() arg 1 must be a string or code object
> >
> > se al posto di c metto la stringa con il nome del campo, funziona...
>
> L'errore avviene sui computedField, evidentemente perchè .get() non è il
> loro accessor :)
Il codice del get di ComputedField è:
def get(self, instance, **kwargs):
"""Return the computed value."""
return eval(self.expression, {'context': instance, 'here' : instance})
dall'errore lanciato sembra semplicemente che 'expression' non sia codice
valido ("string or code object").
--
Riccardo Lemmi Email: riccardo a reflab.it
Reflab S.r.l. - Plone Design, Development and Consulting
Phone: +39 349 4620820 http://www.reflab.it
-------------- parte successiva --------------
Un allegato non testuale è stato rimosso....
Nome: signature.asc
Tipo: application/pgp-signature
Dimensione: 189 bytes
Descrizione: This is a digitally signed message part.
URL: <http://lists.plone.org/pipermail/plone-plone-it/attachments/20090625/39cd3318/attachment.asc>
Maggiori informazioni sulla lista
Plone-IT