Il 05/09/12 11:57, Riccardo Lemmi ha scritto:
On Wednesday 05 September 2012, Roberto Rascioni wrote:
Salve a tutti,
avrei la necessità di caricare n file in un singolo Archetype e di
associare ad ognuno di essi un titolo.
Vorrei evitare di far aggiungere all'utente n (oggetti) File
all'interno di un AT folderish ma di far caricare i file
direttamente attraverso l'interfaccia di editing dell'AT

Cercando un po' la scelta è ricaduta su Products.DataGridField che
non ha purtroppo il campo file disponibile! :(

Sapreste suggerirmi un prodotto o un metodo attraverso il quale
integrare Products.DataGridField con il campo file?

Grazie anticipatamente
Roberto
Puoi partire da cotnent, field e widget di SimpleAttachment che sono
usati da RichDocument.

Grazie mille! era proprio quello che stavo cercando!

Ho iniziato a fare delle prove con SimpleAttachment ma purtroppo ho riscontrato delle problematiche che non riesco a risolvere... Quello che dovrei fare è estendere l'ATEvent e ho aggiunto così un campo booleano con il widget "AttachmentsManagerWidget" di SimpleAttachement (come in RichDocument)

Il risultato è che il campo viene correttamente aggiunto all'interfaccia di editing dell'ATEvent ma l'upload dei file non va mai a buon fine nel senso che i file non vengono mai caricati nella piattaforma

Ho pensato che forse il problema fosse dovuto dal fatto che ATEvent non è un oggetto folderish così ho provato a fare la stessa cosa con l'ATFolder, giusto per verificare, ma il problema non si risolve

Ho provato a fare delle prove anche con un nuovo Archetype creato appositamente allo scopo ma lo stesso non sono riuscito a risolvere il problema


Qualche suggerimento su cosa sto sbagliando o su cosa dovrei fare?

Questo è il codice con il quale estendo l'ATEvent:

from Products.Archetypes.public import BooleanField
from Products.Archetypes import atapi

from archetypes.schemaextender.field import ExtensionField

from zope.component import adapts
from zope.interface import implements
from archetypes.schemaextender.interfaces import ISchemaExtender
from Products.ATContentTypes.interface import IATEvent

from Products.SimpleAttachment.widget import AttachmentsManagerWidget


class EventExtensionBlobField(ExtensionField, BooleanField):
    """ New Event field """

class EventExtender(object):
    adapts(IATEvent)
    implements(ISchemaExtender)

    def __init__(self, context):
        self.context = context#

    def getFields(self):
        return self.fields

    fields = [
        EventExtensionBlobField('attachments',
            default=True,
            widget=AttachmentsManagerWidget(
                label=("Attachments"),
                description=(""),
                expanded=True,
            )),
    ]


Intanto grazie mille per la disponibilità
Saluti
Roberto




_______________________________________________
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


--

*************************************************************
LA SCIENZA DI OGGI E' LA VITA DI DOMANI

Sostieni il *Progetto giovani ricercatori*:
5 per mille all'Universita' di Macerata - C.F.: 00177050432

http://www.unimc.it/5permille
*************************************************************

Save a tree - Do you really need to print this email?
_______________________________________________
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