AMA fais plutôt un script qui appelle lui même here.objectValues et
trie la liste dedans :
j'ai l'impression que tu n'utilises pas results ailleurs...
par ailleurs, regarde si tu ne peux pas plutôt utiliser une recherche
catalogue pour récupérer tes résultats,
et travailler avec des brains.
objectValues est très gourmand
2009/4/27 Alexandre Garel <
[hidden email]>:
> stouil a écrit :
>> Bonjour,
>>
>> J'utilise Plone 3.0 avec la version de python qui va avec.
>> Je dois trier une liste de fichier de la forme 08.07 A, 08.09 S, 08.10 A,
>> 08.101 S, pour l'afficher correctement.
>> J'ai crée un script python qui me permet de trier cette liste par ordre
>> alphabétique croissant.
>>
>> script python dans plone:
>> Non de la fonction: comp_file(x,y)
>> Code de la fonction:
>> x2=x.split('.')
>> y2=y.split('.')
>> if int(x2[1]) > int(y2[1]):
>> return 1
>> if int(x2[1]) < int(y2[1]):
>> return -1
>> return 0
>>
>> ensuite je dois appeler ce script dans une page template de plone (.pt)
>>
>> source de la page template:
>>
>> <html xmlns="
http://www.w3.org/1999/xhtml" xml:lang="en"
>> lang="en"
>> metal:use-macro="here/main_template/macros/master"
>> i18n:domain="plone">
>>
>> <metal:block fill-slot="top_slot"
>> tal:define="dummy python:request.set('disable_border',1)" />
>>
>> <div metal:fill-slot="main">
>> <table tal:define="results here/objectValues;
>> dummy python: results.sort(comp_file)">
>>
>> <tr tal:repeat="item results">
>> <td tal:content="item/title">title</td>
>> </tr>
>> </table>
>> </div>
>>
>> </html>
>>
>> je test et j'ai le message d'erreur suivant:
>>
>> Time 2009/04/24 19:25:00.881 GMT+2
>> User Name (User Id) manager (manager)
>> Request URL
http://localhost:8080/GCA/SENTENCE/YearList>> Exception Type NameError
>> Exception Value name 'comp_file' is not defined
>>
>> Il ne connait pas la fonction comp_file ???
>>
>> Ma question est comment faire pour appeler cette fonction dans ma page
>> template.
>>
>
> Ton script python est dans le portal_skins et tu peux le retrouver par
> acquisition sur le contexte soit context.comp_file
> Ceci dit je ne suis pas sur que ça fonctionnera ainsi car un script
> python est plus qu'une fonction et je ne suis pas sur que tu puisse
> l'utiliser en argument de 'sort'.
>
> Il vaut mieux que ton script prenne en paramètre la liste et renvoie une
> liste triée (et ton comparateur sera définie comme une fonction dans ton
> script).
>
> ainsi tu fera un tal:define="results python:context.sort_file(results)"
> et plop tu auras ta liste triée dans results.
>
> Alex
>
> --
> Alexandre Garel -
[hidden email]
> Pilot Systems - 9, rue Desargues - 75011 Paris
> Tel : +33 1 44 53 05 55 -
http://www.pilotsystems.net> Hébergement Zope et Plone gratuit -
http://www.objectis.org>
>
>
> _______________________________________________
> Plone-FR mailing list
>
[hidden email]
>
http://lists.plone.org/mailman/listinfo/plone-fr>
>
--
Thomas DESVENAIN - Développeur
Ingeniweb, Alterway Solutions
1, rue Royale
227, Les Bureaux de la Colline - Bat D
92213 - Saint Cloud Cedex
Tél : 01 78 15 24 00 / Fax : 01 46 02 44 04
http://www.ingeniweb.com--
_______________________________________________
Plone-FR mailing list
[hidden email]
http://lists.plone.org/mailman/listinfo/plone-fr