pancakes = Article.search 'pancakes'
然后我如何获得最终的sphinxql表达式? 是否可以在不执行查询的情况下检索表达式?
答案 0 :(得分:1)
要查找SphinxQL语句,您可以执行以下操作:
pancakes = Article.search 'pancakes' pancakes.populate pancakes.context[:sphinxql].to_sql
但是,如果你想在没有实际发送查询的情况下得到它 Sphinx,您希望通过更小的中间件发送 堆栈:
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
选项作为其中一部分 搜索选项而不是在搜索对象上调用populate, 保存一行代码。 TS搜索结果被延迟加载,因此 在访问上下文数据时需要这样做。