Il 24/06/2013 13:03, Vito Falco ha scritto:
Ciao,
ho creato un mio tipo di contenuto in archetypes.
Come ho sempre fatto. Nulla di complicato.

Per questo AT ho previsto dei campi che vengono popolati da un vocabulary proveniente da un pannello di controllo creato via plone.app.registry.
Ci sono, ad esempio, due campi

        atapi.StringField('dipartimentobando',
                 required=True,
                 searchable=True,
                 vocabulary='getDipartimento',
                 widget = atapi.SelectionWidget(
                           label = _(u'label_bando_dipartimentobando',
    default=u'Dipartimento che emana il bando'),
                           format = 'select',
                           )),


e

       atapi.StringField('tipocontratto',
                required=True,
                searchable=False,
                vocabulary='getTipocontratto',
                widget = atapi.SelectionWidget(
                          label = _(u'label_bando_tipocontratto',
    default=u'Tipologia contrattuale'),
                          format = 'select',
                          )),


In modalità di view il primo campo viene ok, mentre il secondo pur essendo mostrato come una selectionbox, ha i vari valori selezionabili già tutti flaggati con "selected".

Questo fa si che il valore immagazzinato sia di tipo ['valore1','valore2'] piuttosto che solo 'valore1' (o valore2) come giustamente mi aspetterei e come fa per il primo campo (dipartimentobando).

Le configurazioni di plone.app.registry sono praticamente gemelle. Come mai c'è questa differenza non riesco a capirlo.

Qualcuno ha suggerimenti?
Vito


Prova in un oggetto "nuovo", probabilmente c'è qualcosa di già impostato nell'oggetto che usi per prova? Hai provato a stampare il valore di quel campo con getRaw?
_______________________________________________
Plone-IT mailing list
[email protected]
https://lists.plone.org/mailman/listinfo/plone-plone-it
http://plone-regional-forums.221720.n2.nabble.com/Plone-Italy-f221721.html

Rispondere a