Pour la recherche personnellement je préfère utiliser Sunspot. Ca déchargera ta 
base de donnée et ça t'évitera de t'arracher les cheveux sur des requêtes 
longues comme le bras. 

Dans ton cas de figure c'est tout à fait faisable et même conseillé selon moi.

Documentation à ce sujet : 
http://railscasts.com/episodes/278-search-with-sunspot
http://sunspot.github.com/

Le 30 janv. 2013 à 11:39, oto iashvili a écrit :

> oki, et est ce aussi possible de faire une recherche sur tous les champs ?
> 
> Le mercredi 30 janvier 2013 11:03:00 UTC+1, Céd' a écrit :
> Les listes à choix multiple font partie des exemples présentés justement :-)
> 
> C'est une solution qui me semble très propre et très souple.
> 
> Sans vouloir faire la pub de RailsCast, ça ne coute "que" 9$ par mois (sans 
> engagement si je me souviens bien, donc tu peux même t'abonner pour un seul 
> mois), et même si j'ai eu des réticences au début, c'est probablement les 9$ 
> les mieux investis de mon budget mensuel.
> 
> Le 30 janv. 2013 à 10:53, oto iashvili a écrit :
> 
>> merci pour ton message
>> je n'ai malheureusement pas de compte pro pr regarder cette video. Mais je 
>> penses que cela ne marcherait pas dans mon cas, car certains de mes champs 
>> sont des listes a choix multiple
>> 
>> Le mercredi 30 janvier 2013 09:50:23 UTC+1, Céd' a écrit :
>> Je ne sais pas si ça correspond à ce que tu cherches, mais le dernier 
>> RailsCast traite d'un sujet similaire
>> 
>> http://railscasts.com/episodes/403-dynamic-forms
>> 
>> En résumé, tu aurais une table "ads" (annonces) et une table "ad_types" et 
>> une table "fields".
>> 
>> Chaque "ad_types" aurait un nombre de "fields" (paramètres) de type bien 
>> défini (string, boolean, etc) obligatoire ou non suivant ce que tu souhaites 
>> 
>> Je suis un peu dans le coltard donc n'hésite pas si jamais mon explication 
>> n'est pas très claire
>> 
>> Le 30 janv. 2013 à 09:28, oto iashvili a écrit :
>> 
>>> merci pour l'article. malheureusement cela ne fonctionne pas pour moi, car 
>>> dans ton exemple, il n'y a qu'une seule table pour tes 3 classes. moi je ne 
>>> peux pas faire cela, car ca voudrait dire que l'on aurait un champs nombre 
>>> de pieces pour une annonce de voiture. Jai 80 categories, avec des champs 
>>> different pour chacune. Imagine le nombre de champs que ce ferait pour ma 
>>> table "annonce"
>>>  
>>> 
>>> Le mardi 29 janvier 2013 10:20:28 UTC+1, Nima Izadi a écrit :
>>> J'ai écris un article sur le STI si ça peut aider : 
>>> http://ontherailsagain.com/articles/single-table-inheritance ;)
>>> 
>>> -- 
>>> Nima Izadi
>>> Sent with Sparrow
>>> 
>>> On Tuesday, January 29, 2013 at 10:18 AM, Sylvain Abélard wrote:
>>> 
>>>> Jai aussi pensé a une class AdDetails, et AdRealEstateDetail qui 
>>>> hériterait delle, mais ce n'est pas possible avec les rails que toutes les 
>>>> sous-classes se partageront la même table
>>>> 
>>>> Et bien en fait si c'est possible avec la STI, Single-Table Inheritance.
>>>> Ce serait plutôt AdRealEstate < Ad par contre.
>>>> 
>>>> Je t'avoue que ça fait un sacré bout de temps que je ne me suis pas penché 
>>>> là-dessus...
>>>> Alors du coup je n'ai pas mieux à t'offrir que ça :/
>>>> http://www.google.com/search?q=rails+3+sti
>>>> 
>>>> Quelqu'un at-il une solution pour ce genre de problème?
>>>> 
>>>> 
>>>> donc j'ai pensé au polymorphisme, mais polymorphisme signifie aussi que je 
>>>> dois ajouter une référence à ma table "ads" vers les tables détail, et 
>>>> supprimer ad_id des tables detail, ce que je pense est un non-sens car 
>>>> certaines annonces peuvent ne pas avoir de détails, mais les détails sont 
>>>> des non-sens sans leur annonce.
>>>>  
>>>> Ben, sans vouloir être méchant ou faire de l'argument d'autorité...
>>>> Malgré ce qu'on veut faire croire, le monde du code et de l'Orienté Objet 
>>>> est différent du monde de la BDD et des Entités Relations (ne vous 
>>>> méprenez pas, je trouve ça super qu'on fasse un ActiveRecord qui simplifie 
>>>> les correspondances).
>>>> 
>>>> Et là encore, tu découvriras des mondes totalement différents si tu as la 
>>>> chance de bosser avec un DBA senior, un expert en perf BDD, un 
>>>> tuneur-fou... ou de nombreuses personnes sur cette liste qui sont fans du 
>>>> NoSQL (plus personne parle de schemaless, c'est passé de mode ?). Le 
>>>> "non-sens" s'efface alors devant des astuces parfois surprenantes mais 
>>>> redoutablement efficaces :)
>>>> 
>>>> Dans le monde de l'OO, par contre, il suffit de réunir une poignée de 
>>>> développeurs pour avoir autant de définitions différentes de 
>>>> polymorphisme. Parlons plutôt d'héritage, sur ce coup-là. Et encore :)
>>>> 
>>>> Bon courage et à plus,
>>>> 
>>>> -- 
>>>> -- 
>>>> 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]
>>>> --- 
>>>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
>>>> Railsfrance.
>>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le 
>>>> concernant, envoyez un e-mail à l'adresse [email protected].
>>>> Pour plus d'options, visitez le site 
>>>> https://groups.google.com/groups/opt_out .
>>>>  
>>>>  
>>> 
>>> 
>>> -- 
>>> -- 
>>> 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]
>>> --- 
>>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
>>> Railsfrance.
>>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le 
>>> concernant, envoyez un e-mail à l'adresse [email protected].
>>> Pour plus d'options, visitez le site 
>>> https://groups.google.com/groups/opt_out .
>>>  
>>>  
>> 
>> 
>> -- 
>> -- 
>> 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]
>> --- 
>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
>> Railsfrance.
>> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le 
>> concernant, envoyez un e-mail à l'adresse [email protected].
>> Pour plus d'options, visitez le site 
>> https://groups.google.com/groups/opt_out .
>>  
>>  
> 
> 
> -- 
> -- 
> 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]
> --- 
> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
> Railsfrance.
> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le 
> concernant, envoyez un e-mail à l'adresse 
> [email protected].
> Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out 
> .
>  
>  

-- 
-- 
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]
--- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
Railsfrance.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, 
envoyez un e-mail à l'adresse [email protected].
Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .


Répondre à