2008/8/24 guillaume <[EMAIL PROTECTED]>:
>
> Je vais prendre un exemple p-e plus claire :)...
>
> j'ai un model "Video".
> j'ai aussi trois model : "Auteur", "Difficulte" et "logiciel"
>
> Dans "Video" j'ai un habtm du type :
> Has_and_belongs_to_many :auteurs, :difficultes, :logiciels
> et dans chacun de ces trois model j'ai :
> has_and_belongs_to_many :videos
>
> Je cherche maintenant à trouver l'ensemble des "vidéos" qui ont comme
> auteur "@auteur", comme difficulte "@difficulte" et comme logiciel
> "@logiciel"....
>
> Si je ne cherchais que les vidéos qui ont comme auteur "@auteur" je
> ferais :
> @auteur.videos.find(:all)..
>
> Sauf que la je veux tout en même temps, soit qqch du style :
> Video.find(:all)[EMAIL PROTECTED]@[EMAIL PROTECTED]
>
> Sauf que cette synthaxe ne marche pas !....
>
> Une idée ?
>
Méthode brute : tu peux utiliser Video.find(:all, :include =>
[:auteurs, :logiciels, difficulte], :conditions => ["auteur_id =
:auteur_id AND difficulte_id = :difficulte_id AND logiciel_id =
:logiciel_id", {:auteur_id => @auteur.id, :difficulte_id =>
@difficulte.id, :logiciel_id => @logiciel.id}).
Tu peux aussi utiliser un named_scope sur le modèle video pour laisser
ton code SQL dans les modèles. Je te conseille tout de même de
vérifier que tu as besoin d'instancier @auteur, @difficulte et
@logiciel ...
--
http://fabien.jakimowicz.com
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---