Vous êtes ici : Accueil / Forums & ML / Forums Python / Forum général Python / Pb sous CPS pour une création de requête pour un moteur de recherche

Pb sous CPS pour une création de requête pour un moteur de recherche

Remonter à Forum général Python
  • Pb sous CPS pour une création de requête pour un moteur de recherche

    Envoyé par mvenard le 6 Juillet 2007 à 09:36
    Bonjour je travaille sous CPS

    J'ai un problème concernant la création de ma requête dans un script Python.

    resultats=context.portal_catalog.searchResults(Type='MyDocument', path='/sections/MyBibliotheque', Year=2007)

    Cette ligne de code s'exécute correctement: le script retourne bien les brains correspondants à la requête.

    J'aimerais pouvoir définir une variable Année et l'injecter dans ma requête "dynamique" à la place de la valeur 2007.

    Ca ressemblerait un peu à çà (la syntaxe n'étant pas bonne):

    resultats=context.portal_catalog.searchResults(Type='MyDocument', path='/sections/MyBibliotheque', Year=Année)

    Les nombreux essais que j'ai pu effectué me renvoient des messages d'erreur notamment une Type Error: "string indices must be integers".

    Je débute en Python et malgré mes recherches sur Internet, je n'arrive pas à définir la syntaxe correcte ni à trouver le sens du message d'erreur précédent.

    Si quelq'un peut m'aider à résoudre ce problème.
    • Re: Pb sous CPS pour une création de requête pour un moteur de recherche

      Envoyé par laurent1024 le 6 Juillet 2007 à 14:10

      resultats=context.portal_catalog.searchResults(Type='MyDocument', path='/sections/MyBibliotheque', Year=int(Année))
    • Re: Pb sous CPS pour une création de requête pour un moteur de recherche

      Envoyé par mvenard le 9 Juillet 2007 à 10:58
      ***RESOLU***
      Merci Laurent1024 pour la piste sur l'int.
      En fait mon problème venait que le champ Year de MyDocument était défini en CPS Int Field, il attendait donc un int de la part du formulaire d'où le message d'erreur quand je lui envoyais un string. Par commodité j'ai donc transformé le champ Year en CPS String Index et ca fonctionne parfaitement.
      Merci encore.
Rendu par Ploneboard