Настройка локализации поиска Sphinx (испанский) - PullRequest
0 голосов
/ 08 июня 2011

Я использую поисковую систему Sphinx, чтобы выполнить поиск в проекте Rails через гем Thinking Sphinx.Мой сайт на испанском, поэтому мне нужно, чтобы текст, полученный из Sphinx, тоже был переведен.

Я использую page_entries_info помощник для получения статистики результатов поиска, получая сообщения, такие как

Displaying services 1 - 10 of 412 in total

Это сообщение я бы хотел перевести на испанский .Нет успеха в поиске или поиске документов в документе.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 09 июня 2011

Это всего лишь помощник Уилла Пагината, а не Думающий Сфинкс. Если вы хотите настроить его, я предлагаю просто написать свой собственный вспомогательный метод (я не знаю испанского, но вот быстрое переписывание английского, которое вы, возможно, можете адаптировать):

def page_entries_info(collection)
  if collection.total_pages < 2
    return "Displaying services #{collection.offset + 1} - #{collection.offset + collection.length} of #{collection.total_entries} in total"
  end

  case collection.size
  when 0
    'No services found'
  when 1
    'Displaying 1 service'
  else
    "Displaying all #{collection.size} services"
  end
end

Конечно, он не обрабатывает разные объекты, поэтому может потребоваться усложнить его (если вы посмотрите на Уилла Пагината, я просто украл последние 10 строк этого метода и упростил его - вы могли бы просто возьмите оттуда код и переведите его вместо этого для более обширной реализации).

0 голосов
/ 11 июня 2011

Как и предположил Пэт, я закончил обезличиванием will_paginate * page_info_entries ViewHelper *.

Я создал инициализатор в каталоге config / initializers. Вы можете взглянуть на это здесь .

Я использую Gettext, но есть некоторые решения для i18n в выпуске will_paginate github .

...