pancakes = Article.search 'pancakes'
ThinkingSphinx: Как получить выражение sphinxql SQL?
Как бы получить результат, лежащий в основе выражения sphinxql? Можно ли просто получить выражение без выполнения запроса?
pancakes = Article.search 'pancakes'
ThinkingSphinx: Как получить выражение sphinxql SQL?
Как бы получить результат, лежащий в основе выражения sphinxql? Можно ли просто получить выражение без выполнения запроса?
Чтобы найти заявление SphinxQL, вы можете сделать следующее:
pancakes = Article.search 'pancakes' pancakes.populate pancakes.context[:sphinxql].to_sql
Однако, если вы хотите получить, что без фактического отправки запроса на Сфинкс, вы захотите отправить через гораздо более минимальное промежуточное ПО стек:
middleware = ::Middleware::Builder.new do use ThinkingSphinx::Middlewares::SphinxQL end pancakes = Article.search 'pancakes', :middleware => middleware pancakes.populate pancakes.context[:sphinxql].to_sql
Вы также можете отправить опцию
:populate => true
через часть параметры поиска вместо того, чтобы звонить, заполнить объект поиска, , чтобы сохранить строку кода. Результаты поиска TS лениво загружаются, поэтому для доступа к контекстным данным требуется .