Re: [Python] [ANN] igloo beta

2007-08-27 Per discussione Alessandro
Non capisco bene com'e' strutturato igloo: i template di mako sono sotto 
"templates", mentre sotto "data" ci sono i contenuti e la struttura 
delle directory.
Tali contenuti possono scegliere quale mako-template usare? Oppure usano 
quello di default?
Perchè vedo che questi utilizzano delle "risorse" di tipo "yml", le 
quali a loro volta possono richiamare un nuovo template che però non sta 
sotto "templates" ed è di tipo "nevow"... ho le idee un po' confuse :-(


Ovviamente c'ho passato solo un'oretta, magari leggendo ancora altri 
template mi rispondo da solo


Poi trovo ostica la struttura di directory:
/data
/sitetools/nomesito/templates/...
/sitetools/igloo
/images

ma immagino sia così perchè igloo è pensato per python.org, da mettere 
sulla root, vero?
Ad esempio c'e' la chiave "Using-Python" che mi sembra molto specifica 
per python.org: per utilizzare igloo con un sito generico devo 
riscrivere "generic.py" o simili?



Manlio Perillo wrote:
Stai facendo già tantissimo, ti ringrazio. Diciamo che provo a fare 
il possibile da solo e magari ti chiedo aiuto quando mi blocco o in 
caso di dubbio; vorrei essere io a dare un mano, una volta tanto! ;-)

Se sai usare Mercurial puoi crearti un tuo branch di sviluppo.
Trovo buffa questa cosa di mercurial: sapevo che non è centralizzato 
come subversion, quindi posso "forcare" in locale il tuo codice, facendo 
si che il ramo principale sia sempre sviluppato da te?



Ciao
Alessandro
___
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python


Re: [Python] [ANN] igloo beta

2007-08-27 Per discussione Manlio Perillo

Alessandro ha scritto:
Non capisco bene com'e' strutturato igloo: i template di mako sono sotto 
"templates", mentre sotto "data" ci sono i contenuti e la struttura 
delle directory.


Esatto.
Via opzioni puoi scegliere dove si trovano queste directory.

Tali contenuti possono scegliere quale mako-template usare? Oppure usano 
quello di default?


I contenuti possono scegliere il loro template, definendo l'header 
'Template'.


Ad esempio dai una occhiata a data/news/content.ht di python.org

Perchè vedo che questi utilizzano delle "risorse" di tipo "yml", le 
quali a loro volta possono richiamare un nuovo template che però non sta 
sotto "templates" ed è di tipo "nevow"... ho le idee un po' confuse :-(




Le risorse YAML sono qualcosa di diverso.
Ad esempio una risorsa sono le news.

Quando una pagina usa l'header 'Resources', indica le risorse di cui ha 
bisogno, che verranno caricate e messe a disposizione del template (con 
una variabile di nome 'resources' e di tipo lista di dizionari - o 
dizionari composti).


Queste risorse possono avere contenuto 'attivo' (ad esempio frammenti in 
reST, che verranno automaticamente convertiti in XHTML).


Ovviamente c'ho passato solo un'oretta, magari leggendo ancora altri 
template mi rispondo da solo


Poi trovo ostica la struttura di directory:
/data
/sitetools/nomesito/templates/...
/sitetools/igloo
/images

ma immagino sia così perchè igloo è pensato per python.org, da mettere 
sulla root, vero?


No, è solo per fare in modo che sia facile scegliere i dati per un 
particolare sito via riga di comando (nella versione originale, tutti i 
template erano nella directory principale, quindi il software si poteva 
usare solo per python.org).


Dove metti /data, /images ed il resto lo decidi tu, e passi i path 
relativi alla riga di comando.


Ad esempio c'e' la chiave "Using-Python" che mi sembra molto specifica 
per python.org: per utilizzare igloo con un sito generico devo 
riscrivere "generic.py" o simili?




In genarator.SiteGenerator.process_page, vengono letti degli headers 
che, in alcuni casi, sono specifici di python.org.


Puoi tranquillamente non definirli.
Ad esempio il valore dell'header 'Using-Python' viene passato come 
variabile 'using' al template.


In futuro magari cercherò di spostare questi headers specifici fuori dal 
'core'.




Manlio Perillo wrote:
Stai facendo già tantissimo, ti ringrazio. Diciamo che provo a fare 
il possibile da solo e magari ti chiedo aiuto quando mi blocco o in 
caso di dubbio; vorrei essere io a dare un mano, una volta tanto! ;-)

Se sai usare Mercurial puoi crearti un tuo branch di sviluppo.
Trovo buffa questa cosa di mercurial: sapevo che non è centralizzato 
come subversion, quindi posso "forcare" in locale il tuo codice, facendo 
si che il ramo principale sia sempre sviluppato da te?




Esatto.
E' molto comodo perchè puoi gestire la tua linea di sviluppo 
indipedentemente dalla mia; ovviamente possiamo sempre sincronizzarci 
via merge.



Saluti  Manlio Perillo
___
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python


Re: [Python] [ANN] igloo beta

2007-08-27 Per discussione Alessandro
Ecco, ho le idee molto più chiare. Direi di essere in grado di ripetere 
il sito aziendale *quasi* così come è, perchè il problema della lingua 
la risolvo con la struttura delle directory, tipo


data/   #intro
data/europa.eng/
data/europa.eng/prodotti/
data/europa.eng/cartina/
data/europa.eng/pdf/
data/europa.ita/
data/europa.ita/prodotti/
data/europa.ita/cartina/
data/europa.ita/pdf/
data/europa.ted/

data/asias.eng/

data/asia.chi/



Non so se i pdf posso fare a meno di metterli sotto data; potrei 
utilizzare una dir a parte, come images, ma i link devono poter essere 
relativi (tipo src='./pdf/prodotto1.pdf'). Mettendoli in "data" mescolo 
le cose, ma dovrebbe funzionare


Ho notato che nel sito finale non ci sono pagine html, tipo 
"http://sito/directory1/pagina1.html"; ma solo pagine "index.html".


Perchè hai utilizzato questa soluzione? Su due piedi non mi vengono in 
mente ne vantaggi ne svantaggi, però le pagine che ora sono pubblicate 
dovranno essere riscritte come "http://sito/directory1/pagina1.html/";, 
magari rendendo una pagina di errore o renderizzando effettivamente ciò 
che c'e' ora, per il fatto che ormai sono state indicizzate dai motori 
di ricerca e messe nei bookmarks dai ns clienti.


Forse mi conviene patchare igloo per considerare tutti i files tipo ht, 
trasformandoli in html come avviene per il content.


Alessandro

___
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python