当我运行Ruby命令时
gem install heroku
Run Code Online (Sandbox Code Playgroud)
要么
gem update --system
Run Code Online (Sandbox Code Playgroud)
我收到了警告
ERROR: Could not find a valid gem 'heroku' (>= 0) in any repository
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
Errno::ECONNREFUSED: No connection could be made because the target machine
actively refused it. - connect(2) (http://rubygems.org/latest_specs.4.8.gz)
Run Code Online (Sandbox Code Playgroud)
我查看了几个相关的帖子,其中大部分都提出了网络问题; 我关闭了所有防病毒/防火墙软件,但没有运气.请注意,同一网络上的其他人不会遇到这些问题.我很困惑如何继续.
RubyGems Environment:
- RUBYGEMS VERSION: 1.5.2
- RUBY VERSION: 1.8.7 (2011-02-18 patchlevel 334) [i386-mingw32]
- INSTALLATION DIRECTORY: C:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8
- RUBY EXECUTABLE: C:/RailsInstaller/Ruby1.8.7/bin/ruby.exe
- EXECUTABLE DIRECTORY: C:/RailsInstaller/Ruby1.8.7/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-mingw32
- …Run Code Online (Sandbox Code Playgroud) 我的简单 SQLite FTS3 实现目前将用户查询与存储的结果匹配并返回它们,只要这些结果包含用户查询中的所有单词(换句话说,FTS 表是使用简单的标记器创建的)。
现在,我想让搜索更加智能,我希望它根据查询中匹配结果的单词数对结果进行排名/排序。例如,
SELECT name FROM nametable WHERE name MATCH 'fast food restaurant'
Run Code Online (Sandbox Code Playgroud)
目前返回
SUBWAY FAST FOOD RESTAURANT
MCDONALDS FAST FOOD RESTAURANT
Run Code Online (Sandbox Code Playgroud)
应该回来
SUBWAY FAST FOOD RESTAURANT
MCDONALDS FAST FOOD RESTAURANT
CHIPOTLE FAST FOOD
PIZZA FAST FOOD
GOOD FOOD OUTLET
Run Code Online (Sandbox Code Playgroud)
以该顺序。换句话说,搜索输出不应限于必须包含用户查询的所有单词的结果,而是将包含所有单词的结果放置在列表中较高的位置,同时为返回部分匹配的结果留出空间。
执行此操作的一种简单方法是使用用户输入的所有排列运行多个查询,并将结果按所需顺序 UNION,但这样效率很低。