Il 12/07/2010 15:25, Riccardo Lemmi ha scritto:
> On Monday 12 July 2010, Yuri wrote:
>    
>> Salve!
>>
>>    dovrei sovrascrivere il metodo Title di un Document, nel caso sia
>> applicata una marker interface.
>>
>>    Qual è il modo più semplice? Non vorrei subclassare o modificare il
>> codice, vorrei poter dire che il metodo Title di quell'oggetto, per la
>> mia interfaccia, è implementato nel mio modulo.
>>
>>    Idee?
>>      
> Puoi solo fare un monkey patch, basta eseguire una cosa di questo tipo:
>
> from yourmodule import yourcontent
> def newTitle(self):
>     # ...
>
> yourcotent.YourContent = newTitle
>
> nel codice di newTitle controllerai la marker interface.
>    

Ho visto che con ISchemaModifier si può cambiare lo schema, secondo te 
se cambio l'accessor (field.accessor = mio_metodo ), funziona?

Non si può fare con qualche adapter? Ad esempio con collective.indexer 
sono riuscito ad indicizzare e salvare nei metadata come volevo io per 
l'indice di Title, solo che non riesco a settarlo come voglio io.

  L'alternativa potrebbe essere settare la default view a una custom, 
quando cambio l'interfaccia (uso subtyper), sottoscrivendomi agli eventi 
di subtyper.
_______________________________________________
Plone-IT mailing list
Plone-IT@lists.plone.org
http://lists.plone.org/mailman/listinfo/plone-it
http://www.nabble.com/Plone---Italy-f21728.html

Rispondere a