Rails de MySQL ILIKE requête

Ma syntaxe est éteint. Je veux créer un champ by_name qui trouve tous les agencies dont le nom de l'attribut contenant le passé dans la chaîne (insensible à la casse).

Voici ce que j'ai:

class Agency < ActiveRecord::Base
  scope :by_name, ->(agency_name) { where('name ILIKE ?', "%#{agency_name}%") }
end

Dans la console rails de type I dans agencies = Agency.by_name("foo"). Voici la requête générée:

SELECT `agencies`.* FROM `agencies`  WHERE (name ILIKE '%foo%')

Voici le message d'erreur:

Mysql2::Erreur: Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre serveur MySQL version pour le droit
la syntaxe à utiliser près de " ILIKE '%foo%')

OriginalL'auteur Neil | 2015-12-01