пятница, 13 августа 2010 г.

Thinking Spinx. Разрешить использовать спец. символы в строке поиска

Если в ключевике понадобится использовать спец. символы (например найти товары по тегу Б\У) то поиск будет работать неправильно.
В случае когда ключевое поле содержит такие символы - их надо прописать как разрешенные в конфиг-файле /config/sphinx.yml (добавить для каждого блока и потом перезапустить сам sphinx):

development:
  ...
  charset_table: "0..9, A..Z->a..z,a..z, _, -, /, @, !, $, %, ^, &, (, ), +, `, ~, #"

production:
  ...
  charset_table: "0..9, A..Z->a..z,a..z, _, -, /, @, !, $, %, ^, &, (, ), +, `, ~, #"

Для того чтобы экранировать символы в строке поиска используйте класс который устанавливается вместе с плагином:

Riddle.escape(str)

Который экранирует те символы которые не поддерживаются

1 комментарий: