Tag: 狮身人面像

思考Sphinx并搜索多个模型

我正在寻找一种方法来对多个模型进行搜索(参见这篇文章 ),并得到了几个答案,说思维狮身人面像将是一个很好的匹配这种事情。 事实上,它看起来很甜美,似乎应用程序范围的搜索function( ThinkingSphinx.search )接近我想要的。 但文档声明这将返回各种模型对象,具体取决于找到匹配的位置。 我的模特有点像这样: 雇员 公司 市 县 员工只通过公司与县相关联,公司又与市政府相关联,而市政府又与实际的县相关联。 现在作为搜索的结果,我真的只想要Employee对象。 例如,搜索字符串“joe tulsa”应返回所有Employees,其中两个单词都可以在命名模型中的某处找到。 我会得到一些误报,但至少我应该让塔尔萨县的每个员工都叫“乔”。 这是可以通过Thinking Sphinx的内置function实现的吗?

通过思考狮身人面像的浮动字段进行搜索和排序

我正在使用思考sphinx来搜索rails应用程序。 我有一个名为’height’的浮点字段。 我需要能够在此字段中搜索确切的值(即恰好是6.0,而不是6.5)。 我还需要能够对场地进行排序。 到目前为止我所拥有的: indexes height, :sortable => true 问题:没有正确排序,如果我搜索’6’则返回6.0和6.5

思考狮身人面像自动索引

如何为思考sphinx做自动索引,或者它会继续自动索引新记录(添加/删除)。 或者我必须跑 rake ts:index 根据我的需要,如2小时后或1天后。 如果我必须跑,最好的办法是什么?

Sphinx守护程序返回错误:index product_core:INTERNAL ERROR:传入模式不匹配。 仅在登台服务器上

该应用程序使用Rails 2.3.12和ThinkingSphinx 1.4.11。 产品型号只有一个索引,它在开发盒上工作正常。 在cap staging deploy我在服务器上生成config,创建索引,并启动守护进程: bundle exec rake ts:conf RAILS_ENV=staging bundle exec rake ts:index RAILS_ENV=staging bundle exec rake ts:start RAILS_ENV=staging 在进入rails控制台之后我得到了: >> Product.search(‘music’) Sphinx Sphinx Daemon returned error: index product_core: INTERNAL ERROR: incoming- schema mismatch (in=uint account_id:32@192, my=uint account_id:32@0) ThinkingSphinx::SphinxError: index product_core: INTERNAL ERROR: incoming-schema mismatch (in=uint account_id:32@192, my=uint account_id:32@0) from /var/www/rebelshop_staging/rebelshop/shared/bundle/ruby/1.8/gems/thinking-sphinx-1.4.11/lib/thinking_sphinx/search.rb:417:in `populate’ […]

思考Sphinx没有索引新添加的记录

我正在使用sphinx搜索2个模型及其关联。 我正在使用delta索引。 在开发模式(Ubuntu)中我的开发盒上工作正常。 但是,在staging box生产环境中,当我创建新记录时,我需要再次构建索引,以便使新创建的记录可搜索。 甚至奇怪的是,当我使用脚本/控制台创建记录时,它们似乎被编入索引并且可以搜索。 为了在更新后工作的关联,我有一个用于所有关联模型的after_save方法,它将这两个模型记录的delta设置为true。 我不确定这是否与此有关。 我已经检查了权限,思考sphinx gem版本,它们似乎都很好。 可能有什么不对? 编辑 我还检查了http://freelancing-god.github.com/ts/en/common_issues.html#deltas但它似乎没有用。 是的,服务器运行在phusion乘客。

任何想法为什么思考Sphinx Rake任务没有运行?

我发现当我尝试运行其Rake任务时,Thinking Sphinx有时会出错。 有时候任务工作正常,有时候会出现类似下面的错误。 我正在以普通用户身份运行任务,而不是root用户。 不使用sudo。 在下面的示例中,在Rake任务失败后,searchd仍在运行。 我也看到过类似的错误ts:rebuild 。 有没有人见过这个? 我正在使用Sphinx 0.9.9版本(r2117) 我正在使用Thinking Sphinx 1.4.4而不是最新版本,因为我使用的是Rails 2.3.11。 $ rake ts:stop RAILS_ENV=production (in /var/www/blog_app/releases/20110425053509) rake aborted! execution expired (See full trace by running task with –trace) [ethan@apphost current]$ rake ts:stop RAILS_ENV=production –trace (in /var/www/blog_app/releases/20110425053509) ** Invoke ts:stop (first_time) ** Invoke thinking_sphinx:stop (first_time) ** Invoke thinking_sphinx:app_env (first_time) ** Execute […]

思考Sphinx和acts_as_taggable_on插件

我在轨道2.3.2上安装了Sphinx和Thinking Sphinx for ruby​​。 当我无条件搜索时,搜索工作正常。 现在,我想做的是按标签过滤,因此,当我使用acts_as_taggable_on插件时,我的公告模型如下所示: class Announcement :title, :sortable => true indexes description, :as => :description, :sortable => true indexes tags.name, :as => :tags indexes category.name, :as => :category has category(:id), :as => :category_ids has tags(:id), :as => :tag_ids end 出于某种原因,当我运行以下命令时,它只会带来一个声明,这与我的期望无关。 我有很多公告,所以我期待很多结果。 Announcement.search params[:announcement][:search].to_s, :with => {:tag_ids => 1}, :page => params[:page], :per_page => […]

使用SPHINX / ultrasphinx索引文件

我正在开发一个从网站上抓取数据的应用程序。 page_url,site_url,last_modified等详细信息将存储在数据库中,page_content将存储在文件中。 后来我想搜索文件的内容。 我正在尝试Thinkingsphinx来实现这一目标。 有没有人知道如何实施它?

思考 – 狮身人面像指数最低

我有产品和价格模型,其中: class Product < AR::Base has_many :prices # there are several types of prices, eg for guests, users et.c. 我想按价格值对产品进行索引和分类,属于该产品和确切的price_type。 ThinkingSphinx::Index.define :product, with: :active_record do indexes name indexes k1c indexes catalogue_code indexes created_at, sortable: true indexes prices(:value), as: :price, sortable: true # TODO has :category_id has :brand_id has :kind_cd has :price_id end 在rake ts:rebuild I […]

部署后思考Sphinx – ThinkingSphinx :: SphinxError(搜索请求中未知的本地索引’user_core’):

我查看了这个主题: Sphinx错误:搜索请求中的未知本地索引“INDEX_NAME” ,但它已关闭,并且我的rails应用程序中没有解决问题。 我将TS更新为3.0.2,并将其包含在deploy.rb中。 我也改变了模型中的代码。 现在它在开发中工作,有些例子在测试中工作,有些则没有。 但成功部署后,我收到错误: ThinkingSphinx::SphinxError (unknown local index ‘user_core’ in search request): 我尝试重建,重启和其他的东西,但它不起作用:( 有谁能够帮我? 谢谢!