Vous êtes ici : Accueil / Forums & ML / Forum Zope / Forum Général Zope / Tri sur plusieurs index

Tri sur plusieurs index

Remonter à Forum Général Zope
  • Tri sur plusieurs index

    Envoyé par Fredo le 15 Septembre 2005 à 16:05
    Bonjour,

    Je recherche de la documentation (et des réponses :o) ) sur les possibilitées de trier une recherche sur le Portal_catalog selon plusieurs index.

    J'ai trouvé du code comme :

    recherche = context.portal_catalog.searchResults(
    portal_type = 'mon_type',
    review_state = 'published',
    sort_on = 'modified',
    sort_order = 'reverse')

    tri = (('title', 'nocase', 'asc'),
    ('date', 'cmp', 'desc'),)
    recherche_triee = sequence.sort(recherche, tri)

    - Dans ce cas le tri est-il d'abord effectué sur "title", puis sur "date" ?
    - Le "sort_on='modified'" de la requete sert-il à quelque chose ?
    - Quel sont les autres opérateurs que "nocase" ou "cmp" ?


    Dans certain schéma pour Archetypes, je fournis une liste déroulante de communes, la liste est définie ainsi :

    StringField('ville',
    vocabulary = DisplayList((
    ("1","Argol",),
    ("2","Camaret sur mer",),
    ("3","Cast",),
    ("4","Chateaulin",),
    ("5","Crozon",),
    ("6","Dineault",),
    ("7","Landevennec",),
    ("8","Lanveoc",),
    ("9","Locronan",),
    ("10","Ploeven",),
    ("11","Plomodiern",),
    )),
    index='FieldIndex:schema',
    searchable=1
    ),

    Dans le Portal_catalog, c'est le numéro de la commune qui est enregistré. Si je veux trier un résultat selon l'ordre alphabetique des communes, je suis coincé :o(

    - Peut-on définir la liste avec seulement le nom de commune, sans le numéro ?
    - Ou, il y a une meilleure méthode pour définir une liste de commune ?


    Merci de vos réponses.
  • Re: Tri sur plusieurs index

    Envoyé par zyon le 19 Septembre 2005 à 04:27
    Le "sort_on='modified'" de la requete sert-il à quelque chose ?

    Non il sert à rien, et le "sort_order" non plus.
  • Re: Tri sur plusieurs index

    Envoyé par Fredo le 19 Septembre 2005 à 09:52
    En cherchant dans le code source d'Archetypes, j'ai trouvé qu'il existe une classe IntDisplayList pour les listes avec un entier comme clé. L'utilisation d'une classe DisplayList avec un clé entière n'est pas recommandé.
Rendu par Ploneboard