J'ai une gamme de noms d'équipe d'une autre partie du code et je souhaite trouver toutes les équipes non dans ce tableau. J'ai essayé ce qui suit et ça ne marche pas.
@team_exclude_list = ['Team 1', 'Team 2', 'Team 3']
@teams = Team.where("name != ?", @team_exclude_list)
C'est dans Rails 3 et les googles ne me donnent pas beaucoup d'amour.
Je n'ai jamais fait cela avec un champ de cordes, mais cela fonctionnera peut-être:
@teams = Team.where("name NOT IN (?)", @team_exclude_list)
Rails 4 Solution:
@team_exclude_list = ['Team 1', 'Team 2', 'Team 3']
@teams = Team.where.not(name: @team_exclude_list)
De plus, pour accélérer la requête, vous pouvez:
OR