Azioni sul documento
Creazione di un template archetype
Creazione di un template archetype
Se abbiamo creato un'istanza plone tramite buildout, ci spostiamo dalla radice della nostra istanza alla directory di sviluppo /src per iniziare la creazione di un nuovo archetype.
cd myplone3instance/src paster create -t archetype
Si avvia un processo interattivo dove paster chiede di inserire le informazioni sul progetto.
Scegliamo anzitutto un nome composto dal namespace (ploneit) e dal nome del prodotto (simpleproject) ed il titolo "amichevole" del progetto (Ploneit Simple Project). Ci viene poi richiesto di inserire il namespace ed il nome separatamente ed altre informazioni.
Namespace?
La struttura dei progetti creati con paster è "eggificata", cioè utilizza le convenzioni degli egg dei repository python. La presenza di un namespace in aggiunta al nome del prodotto è una delle caratteristiche dei python eggs e permette di definire un identificativo unico per i propri prodotti. In questi esempi abbiamo scelto il namespace ploneit. Per una scelta di retrocompatibilità avremmo potuto usare Products.
Attenzione alla richiesta di creazione di un prodotto zope2: il default è False, ma noi probabilmente vogliamo mettere True.
Selected and implied templates: ZopeSkel#basic_namespace A project with a namespace package ZopeSkel#plone A Plone project ZopeSkel#archetype A Plone project that uses Archetypes Enter project name: ploneit.simpleproject Variables: egg: ploneit.visitcard package: ploneitvisitcard project: ploneit.visitcard Enter title (The title of the project) ['Plone Example']: Ploneit Simple Project Enter namespace_package (Namespace package) ['plone']: ploneit Enter package (The package contained namespace package) ['example']: simpleproject Enter zope2product (Are you creating a Zope 2 Product?) [False]: True Enter version (Version) ['0.1']: Enter description (One-line description of the package) ['']: A simple test project Enter long_description (Multi-line description (in reST)) ['']: A simple test project featuring custom content types Enter author (Author name) ['Plone Foundation']: Lili Enter author_email ['plone-developers@lists.sourceforge.net']: eleonora@reflab.com Enter keywords (Space-separated keywords/tags) ['']: Enter url (URL of homepage) ['http://svn.plone.org/svn/plone/plone.example']: Enter license_name (License name) ['GPL']: Enter zip_safe (True/False: if the package can be distributed as a .zip file) [False]: De
Ci ritroviamo con una directory chiamata ploneit.simpleproject che contiene lo scheletro del nostro nuovo prodotto.
ploneit.simpleproject/ |-- README.txt |-- docs/ |-- ploneit/ | |-- __init__.py | `-- simpleproject/ | |-- __init__.py | |-- browser/ | |-- config.py | |-- configure.zcml | |-- content/ | |-- interfaces.py | |-- portlets/ | |-- profiles/ | |-- tests/ | `-- tests.py |-- ploneit.simpleproject.egg-info/ |-- setup.cfg `-- setup.py

twitter
