0
是否有能力通过思考狮身人面像中的关联栏来排序搜索结果?思考狮身人面像与铁轨 - 按协会排列栏
我已经指数定义如下:在控制器中执行
ThinkingSphinx::Index.define :demand, :with => :active_record, :delta => true do
indexes client(:name), as: :client, sortable: true
has(created_at, updated_at, client_id)
end
搜索:
Demand.search(params[:query], order: "#{params[:sort]} #{params[:direction].try(:upcase)}")
的params[order]
值是"client.name"
,params[:direction]
要么"asc"
或"desc"
这里是由斯芬克斯生成的查询:
SELECT * FROM `demand_core`, `demand_delta` WHERE MATCH('Test_client @sphinx_internal_class_name (Demand)') AND sphinx_deleted = 0 ORDER BY client.name DESC LIMIT 0, 20
当我执行搜索,我得到以下错误:
ThinkingSphinx::SyntaxError - sphinxql: syntax error, unexpected CONST_FLOAT, expecting $end near '.name DESC LIMIT 0, 20; SHOW META':
我一直在寻找一段时间的解决方案,但没能找到。所以问题是如何在我执行搜索后在狮身人面像中应用排序?
耶!这工作,非常感谢。也许你应该扩大你的答案,以便它变得明显如何解决这个问题。 – RomanKapitonov 2013-05-03 16:45:25