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.
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.