问题标签 [sunspot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
709 浏览

ruby-on-rails - 太阳黑子搜索:使用否定关键字搜索

您好,我正在使用太阳黑子进行搜索:当我说:

关键字 '"India" -"mountain"' do
minimum_match 1 end

它找到所有与“印度”关键字相关且不包括“山”关键字的帖子。但是,当我想要全球所有不应包含“山”关键字的帖子时,我应该怎么做?尝试使用时

关键字 '-"mountain"' do
minimum_match 1 end

它返回了 0 个结果。

有什么方法可以只将负过滤器值传递给 sunspot 并检索除传递的关键字之外的所有记录?

0 投票
2 回答
356 浏览

sql - Ruby:将 Sunspot 搜索降级为 SQL

我有 3 个 Rails 应用程序正在运行:

  1. 本地开发(安装了 Sunspot)
  2. 在 Heroku 上暂存(运行“生产”Rails 环境)
  3. Heroku 上的生产(运行“生产”Rails 环境)

在 Heroku 上使用 Solr 需要花钱,我将把它添加到我的生产应用程序中。我不想将 Solr 添加到我的暂存应用程序中,因为性能并不重要。

我想知道是否有一种体面的方法可以将我的 Sunspot/Solr 调用降级为 SQL 查询。

我的控制器中的太阳黑子调用如下所示:

0 投票
2 回答
3498 浏览

ruby-on-rails - 一旦我的应用程序爬升到 > 1000 个对象 [包括 Solr 日志],Sunspot-Solr 就会减速成野兽

我很好奇是否有人注意到 Sunspot-Solr 的任何缩放问题。即使我删除了所有可搜索的参数,它也只是单独计入原始类;在我的本地加载仍然需要 5 到 8 秒,生产需要 4 到 5 秒。

还有其他人能够扩展 Sunspot-Solr 吗?有哪些常见问题?

怎样才能更深入地了解这一点?

这是单个请求的 Solr 日志:

0 投票
2 回答
589 浏览

ruby-on-rails - 是否可以根据内容长度调整 Solr 命中相关性分数?

我有一个 Rails 应用程序,它使用 sunspot 对具有不同大小记录的表进行搜索。我想根据某个字段的大小来调整命中的分数。这是为了惩罚内容很少但恰好在顶部显示正在搜索的术语的文章。那可能吗?

0 投票
2 回答
16684 浏览

ruby-on-rails - 在生产环境中使用 rails 设置 sunspot solr

我尝试了各种链接,但似乎找不到一个好的资源来创建一个在生产中与 rails 一起工作的正在运行的 solr 实例。

我了解您必须为生产设置 solr 服务器。我已经尝试使用 tomcat 设置 solr,但我似乎无法将其链接到 rails 应用程序。

有什么好的资源可以使用吗?

谢谢

0 投票
5 回答
2813 浏览

ruby-on-rails - 如何从 Sunspot Solr Rubygem 旋转、覆盖或关闭日志记录?

我在 Sunspot Solr 搜索 Ruby on Rails 方面有很好的经验,但是,它的日志文件变得非常大,我似乎无法找到一种方法来旋转覆盖关闭这些日志(除了非常我宁愿不追求的hacky方法)。

我在config/中有一个文件sunspot.yml,我尝试将log_level标志设置为SEVERE,但是,这没有效果。

但是,我尝试使用标准的Logger.config轮换方法,它只是将我的开发日志输出发送到新创建的文件。

我将非常感谢您提供的任何建议。

0 投票
3 回答
1307 浏览

ruby-on-rails - Sunspot_Rails Rake 在运行重新索引时中止

我无法索引我的数据库以使用 sunspot_rails 进行搜索。我收到以下错误:

执行 sunspot:reindex rake 中止!未定义的局部变量或方法“计数器”

运行 rake sunspot:reindex 后,我得到以下输出。我是 Rails 的新手。我想将 sunspot_rails 添加到我的项目中以添加搜索功能(希望使用 Heroku 部署项目)。

我正在使用 Rails 3。我按照此处的说明进行操作:https ://github.com/outoftime/sunspot/blob/master/sunspot_rails/README.rdoc 。我诊断问题的各种其他尝试包括:

  • 除了 sunspot_rails 之外还安装 sunspot。
  • 我最终得到了 sunspot_rails v. 1.2.0 和 1.2.1,所以我卸载了 1.2.1,因为我有 sunspot_rails 1.2.0。
  • 安装了我理解的 nokogiri gem 是 sunspot_rails 的依赖项。
  • 按照此处安装 nokogiri 的说明单独安装 libxml2:http ://www.engineyard.com/blog/2010/getting-started-with-nokogiri/

    ** 调用 sunspot:reindex (first_time) ** 调用环境 (first_time) ** 执行环境 ** 执行 sunspot:reindex rake 中止!未定义的局部变量或方法counter' for [removed pound]<Class:0x10359aef8> /Library/Ruby/Gems/1.8/gems/activerecord-3.0.3/lib/active_record/base.rb:1008:inmethod_missing' /Library/Ruby/Gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/searchable.rb:235:in solr_index' /Library/Ruby/Gems/1.8/gems/activerecord-3.0.3/lib/active_record/relation/batches.rb:71:infind_in_batches' /Library/Ruby/Gems/1.8/gems/ activerecord-3.0.3/lib/active_record/base.rb:440:in __send__' /Library/Ruby/Gems/1.8/gems/activerecord-3.0.3/lib/active_record/base.rb:440:infind_in_batches'/ Library/Ruby/Gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/searchable.rb:234:in solr_index' /Library/Ruby/Gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/searchable.rb:184:insolr_reindex ' /Library/Ruby/Gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/tasks.rb:57 /Library/Ruby/Gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/ rails/tasks.rb:56:in each' /Library/Ruby/Gems/1.8/gems/sunspot_rails-1.2.0/lib/sunspot/rails/tasks.rb:56 /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:incall' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:inexecute' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in每个' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in execute' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:ininvoke_with_call_chain' /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby /1.8/monitor.rb:242:in synchronize' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:ininvoke_with_call_chain' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in invoke' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:ininvoke_task' /Library/Ruby/Gems/1.8/gems /rake-0.8.7/lib/rake.rb:2029:in top_level' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:ineach' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in top_level' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:instandard_exception_handling' /Library/Ruby /Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in top_level' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:inrun' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:instandard_exception_handling' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in运行' /Library/Ruby/Gems/1.8/gems/rake-0.8.7/bin/rake:31 /usr/bin/rake:19:in `load' /usr/bin/rake:19

这是我在课堂上想要搜索的内容:

任何帮助将不胜感激!

0 投票
1 回答
113 浏览

ruby-on-rails - 通过 Rails 加载搜索结果的最简单方法是什么?

这是一个总体战略问题。我一直在用 sunspot_rails 修改搜索结果页面的加载时间,并且我注意到了一些奇怪的发现。

  1. 有时,如果加载了其他内容,结果加载速度会更快。

  2. 我越能避免连接表,我就越能轻触数据库。

我很好奇我是否还缺少其他一些很棒的主食。这是我正在解析的搜索结果示例,其中包含有关如果我将项目隔离并自行加载项目所花费的平均加载时间的评论。

搜索图像

基本信息

图标

关于文本

0 投票
1 回答
1787 浏览

ruby-on-rails - 太阳黑子索引和搜索标签返回一切

我在我们的项目中使用 act_as_taggable_on 进行标记,同时使用 sunspot/solr 进行搜索。

我们得到了一个奇怪的意外结果。首先我们的设置(短版):

模型:

Taglist 是 act_as_taggable_on 中的一个方法,它为每个项目返回一个标签数组(fe [“foo”,“bar”])。我们为项目成员索引项目标签。

当,在我们的控制器中,我们这样做:

这会返回合适的人。到目前为止,一切都很好。

问题
我们希望能够搜索多个标签。因此,根据太阳黑子指令,我们传递一个数组。代码大致如下:

现在,无论我们使用什么标签,Sunspot 都会给我们每个人!我们一直在疯狂地在控制台中对此进行测试,但无法理解我们哪里出错了。

任何帮助,将不胜感激!
欧文

0 投票
2 回答
714 浏览

ruby-on-rails - solr 太阳黑子在 Rails 模型中没有得到参数

我正在关注 Ryan Bates 截屏视频并构建一个基本搜索,但我决定需要比纯 MySQL 文本搜索更好的东西,并希望 Sol Sunspot gem 可以工作。

根据截屏视频http://media.railscasts.com/videos/037_simple_search_form.mov,我已经在我的模型中设置了搜索。

我的控制器有一个简单的

我的模型有

当我在没有搜索的情况下加载页面时,我得到了正确的输出。

当我提供搜索词时,我得到

我已经尝试过“search do”和“Task.search do”,因为这似乎是我看过的教程之间的区别http://tech.favoritemedium.com/2010/01/full-text- search-in-rails-with-sunspot.html,以及我这样做的方式,从控制器传递到方法中。

有关如何进行此操作的任何建议?