Re: [ZIZope] Madifica template di view con GenericPloneContent]
Yuri <[email protected]>
| Newsgroups | gmane.comp.web.zope.italian |
|---|---|
| Message-ID | <[email protected]> |
Alessandro Guarguaglini wrote:
> Alle venerdì 30 novembre 2007, Yuri ha scritto:
>
>> Il fatto è che GenericPloneContent non mi permette la modifica della
>> macro di visualizzazione del widget... in archetypes avrei fatto (ho
>> preso l'esempio da un campo stringa, ma il concetto è quello):
>> [...]
>>
> Potreste, a mio avviso, tentare questa strada :
>
> 1) crea un file chiamato [tuo_portal_type]_view (il nome deve comunque
> essere tutto minuscolo!) copiando il contenuto di base.pt (dalla dir.
> skins di archetype)
>
> 2) cambia il file cosi' :
>
> da =
>
> <metal:body_macro metal:define-macro="body"
> tal:define="field_macro field_macro | here/widgets/field/macros/view;"
>
>
> a =
>
> tal:define="my_field_macro python: test(field.getName == 'my_field',
> context.my_field_macro.macros['view'],
> '');
> field_macro my_field_macro | field_macro | here/widgets/field/macros/view;"
>
credo che '' non venga interpretato come None, forse volevi dire:
tal:define="my_field_macro python: test(field.getName == 'my_field',
context.my_field_macro.macros['view'],
None);
field_macro my_field_macro | field_macro | here/widgets/field/macros/view;"
ma comunque credo lo trovi nello spazio dei nomi e si fermi al primo.
Infatti:
<html>
<head>
<title tal:content="template/title">The title</title>
</head>
<body>
<div tal:repeat="nome python:['uno','due']">
<div
tal:define="my_field_macro python: test(nome == 'uno',
'la prima',
None);
field_macro my_field_macro | string:'vado al default';">
<span tal:content="field_macro"></span>
</div>
</div>
</body>
</html>
restituisce solo "la prima" sia che metti '' o None nella prima define.
Credo si debba fare in modo diverso.
> 3) crea il file my_field_macro partendo da widgets/field.pt e creando
> un'eccezione come sopra per il tuo campo, e usi come widget quello creato da te.
>
> Abbastanza brutto e macchinoso, ma potrebbe funzionare... :-)
>
> Visto che questo e' il mio primo messaggio, approfitto per salutare tutta la
> lista, che seguo volentieri da tempo.
>
> Ciao,
>
> Alessandro.
>
>