Yii2: нечувствительный к акценту фильтр - PullRequest
0 голосов
/ 12 декабря 2018

Я хочу искать слова, используя нечувствительный к акценту .Для нечувствительных к регистру я использую ilike :

$query->andFilterWhere(['ilike', 'name', $this->name]);

Но для нечувствительного к акценту решения я не знаю Yii2 (иначе я могу использовать это решение PHP ).

В следующем примере я ищу слово «камара», но не находит слово «камара» (по-испански означает камеру):

No results found

1 Ответ

0 голосов
/ 12 декабря 2018

Я решил, используя lower_unaccent PostgreSQL функцию и ILIKE PostgreSQL оператор :

$query->andWhere(new Expression(
    'lower_unaccent(name) ILIKE \'%\' || lower_unaccent(\'' . $this->name . '\') || \'%\''
));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...