Je tente de créer un filtre sur une application rails qui utilise plusieurs cases à cocher correspondant à un db-colonne/attribut pour filtrer les résultats, mais je ne suis pas sûr de savoir comment allez-y exactement.Filtrage des résultats dans des rails avec des cases à cocher à valeurs multiples
EX.
index affiche une liste des conditions météorologiques des dernières années et que vous souhaitez filtrer
Ces attributs font partie d'une classe Day.
Voir
<fieldset>
`
<legend>Sky</legend>
<%= check_box_tag('filter[sky][]', 'sunny') %>Sunny
<%= check_box_tag('filter[sky][]', 'partly sunny') %>Partly Sunny
<%= check_box_tag('filter[sky][]', 'overcast') %>Overcast
</fieldset>
<fieldset>
<legend>Humidity</legend>
<%= check_box_tag('filter[humidity][]', 'low') %>Low
<%= check_box_tag('filter[humidity][]', 'average') %>Average
<%= check_box_tag('filter[humidity][]', 'high') %>High
</fieldset>
Je veux alors être en mesure de passer par les options pour chaque filtre et appliquer tous ceux qui ont été sélectionnés. Donc, si je veux voir tous les jours qui étaient ensoleillés avec une humidité faible et moyenne, je voudrais vérifier ces boîtes et obtenir des jours qui ont été sommy soit avec une faible humidité ou une humidité moyenne. En SQL, nous parlerions d'une clause IN.
Je suis assez nouveau sur les rails, donc je ne suis pas sûr s'il y a des fonctionnalités spéciales de rails que je devrais utiliser pour cela ou non. Ai-je juste besoin d'écrire une fonction pour parcourir les cases à cocher et construire l'instruction SQL?
Toute aide est grandement appréciée. Je modifierai ce post si j'en ai besoin pour clarifier quoi que ce soit.