Ciao, On 01/31/2011 12:05 PM, Yuri wrote: > Il 31/01/2011 11:54, Sandro Caneschi ha scritto: >> Un saluto a tutti... >> ho creato un mio archetype tramite i comandi paster e un po' di >> programmazione manuale. >> >> Adesso avrei la necessità di creare altri tipi di oggetto simili o >> addirittura uguali. >> Vorrei non replicare il codice e penso che la cosa migliore sia quella >> di creare archetypes che estendono quello da me creato. >> >> Non ho trovato informazioni a riguardo. > > a - Crei un archetype che abbia come classe base il tuo archetype > b - usi schemaextender > > a e b dipendono da quello che devi fare, e come. Consiglierei a) per > ora, hai più agilità.
concordo sull'opzione "a" e aggiungerei: stai attento che non basta fargli ereditare solo la classe ma devi fargli ereditare anche lo schema in maniera da poterlo customizzare a dovere per i tuoi oggetti derivati. Ad esempio, se crei un content type con paster (come hai fatto) e gli dici che deve essere "folderish" vedrai qualcosa del genere nel file content/miocontenuto_folderish.py: [...] from Products.ATContentTypes.content import folder [...] MyFolderSchema = folder.ATFolderSchema.copy() + atapi.Schema(( # -*- Your Archetypes field definitions here ... -*- )) [...] class AdvancedFolder(folder.ATFolder): [...] schema = MyFolderSchema [...] HTH _______________________________________________ Plone-IT mailing list Plone-IT@lists.plone.org https://lists.plone.org/mailman/listinfo/plone-it http://plone-regional-forums.221720.n2.nabble.com/Plone-Italy-f221721.html