IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ruby on Rails Discussion :

will_paginate et :conditions


Sujet :

Ruby on Rails

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 110
    Par défaut will_paginate et :conditions
    Bonjour,

    Je fait une requête avec will_paginate et je n'arrive pas à définir le pramaètre :condition.

    Une partie de la condition se fait sur le champ 'categorie_id'
    Mes catégories sont organisées sur le modèle 'acts_as_tree' avec un champ 'parent_id'.

    Je voudrais que la condition filtre tout les messages de la catégorie définie par params[:id] ainsi que tous ceux des catégories filles.

    Voila mon code, pour le moment il marche mais en filtrant uniquement les message de la catégorie définie par params[:id].

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    @souscategories = Categoriemessage.find(:all, :conditions => ["parent_id = ?", params[:id]])
        @sujets =  Message.paginate :per_page => 10, :page => params[:page],
                                    :conditions => ["sujet_id = ? AND categorie_id = ?", '0', params[:id]]
    Je manque un petit peu d'intuition pour inclure les messages des catégories filles. (j'ai essayé de faire des boucles sur '@souscatégories' mais sans succès).

    Merci,

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 657
    Par défaut
    Salut,

    acts_as_tree inclue la méthode #children pour récuperer les fils, tu peux donc faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    categorie = Categoriemessage.find(params[:id])
    categories = [categorie] + categorie.children # tableau avec la catégorie + les catégories filles
     
    # Puis on récupere tout les messages
    @sujets =  Message.paginate :per_page => 10, :page => params[:page],
                                    :conditions => { :sujet_id => 0, :categorie_id => categories}

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 110
    Par défaut
    Merci. (et j'en resort plus à l'aise avec les tableaux...)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Condition If multiple
    Par M1000 dans le forum ASP
    Réponses: 2
    Dernier message: 01/03/2004, 13h46
  2. [MYSQL] conditions et requetes
    Par sebos63 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 26/02/2004, 16h41
  3. Condition sur debug et release
    Par xave dans le forum MFC
    Réponses: 3
    Dernier message: 04/02/2004, 15h04
  4. Condition et contenu TImage
    Par Detlev_linux dans le forum Langage
    Réponses: 6
    Dernier message: 23/12/2003, 01h00
  5. boucle avec condition d'arret changeante
    Par NicoH dans le forum Langage
    Réponses: 3
    Dernier message: 10/06/2003, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo