草庐IT

elastic-stack

全部标签

Elastic Search 模糊搜索解决方案

目录场景方案设计方案实践创建index设置mapping插入数据搜索语句实践结果场景对字符类型字段进行模糊搜索,比如用户昵称、备注名等等属性例如:方案设计使用 ngram分词器+短语搜索,ngram分词器和短语匹配的使用会在下面实践中展示方案实践创建indexPUTuser{  "number_of_shards":"5",  "number_of_replicas":"1",  "analysis":{    "analyzer":{      "ngram_analyzer":{        "tokenizer":"ngram_tokenizer"      }    },    "f

ruby - 如何在 Elastic Beanstalk 中隐藏 Nginx 版本

我正在Ruby2.2(PassengerStandalone)平台上运行一个应用程序,并希望从HTTPheader中隐藏nginx版本。我没有使用Docker。其他StackOverflow答案建议将此添加到我的.ebextensions:00_nginx.conf:files:"/etc/nginx/conf.d/proxy.conf":mode:"000644"content:|http{server_tokensoff;passenger_show_version_in_headeroff;}但是这没有任何作用。我应该将文件放在不同的位置吗? 最佳答案

ruby-on-rails - 使用 Active Admin 和 Elastic Search 时 Ransack::Search 的未定义方法 `each'?

您好,我一直在使用Railcasts#306(http://railscasts.com/episodes/306-elasticsearch-part-1)作为示例在我的应用程序中使用ElasticSearch。在我安装ActiveAdmingem之前一切正常。当我在shops#index页面中传递查询时,出现以下错误:Ransack::Search的未定义方法“each”>:Ransack::Search知道为什么它使用Ransackgem(而不是ElasticSearch)进行搜索吗?下面是与搜索相关的代码片段:商店.rb:classShopshops_controller.rb

ruby - 为什么我在 irb 1.9.3 中从 method_missing 得到 "stack level too deep"?

场景:-bash-3.2$irb-fruby-1.9.3-p0:001>@v={}=>{}ruby-1.9.3-p0:002>defmethod_missing(sym,*args);@v[sym];end=>nilruby-1.9.3-p0:003>a(irb):2:stackleveltoodeep(SystemStackError)-bash-3.2$我使用-f运行以避免加载任何irbrc内容。我希望在输入a时得到nil。这是怎么回事,有解决方法吗?我尝试用begin/rescueExceptionblock包装a但那没有做任何事情。1.9.2也会发生这种情况,但1.9.1不会。

ruby-on-rails - 在 AWS elastic beanstalk 上部署 Rails - 静态 Assets 路由不起作用

我通过亚马逊的eb工具在AWSelasticbeanstalk上安装了我的Rails应用程序。在elasticbeanstalk上,我使用它的默认负载均衡器,并使用ruby​​2.0运行ubuntu64bit。我遇到了两个主要问题:1)根路由不工作。在我的config/routes.rb中,我试过:root'controller#actionroot:to=>'controller#action'rootto:'controller#action'并发现它们都不起作用。服务器给我一个错误说:Invalidroutename,alreadyinuse:'root'(ArgumentErr

ruby-on-rails - 如何在 elastic-beanstalk 中应用 ruby​​ 版本补丁

我们正在AmazonElasticBeanstalk上运行我们的应用程序,并且想将我们使用的ruby​​版本更新到最新的补丁版本,但不知道什么是最好的方法。我认为我们可以在配置中使用container_commands,但不确定这样做是否正确。是否只在Gemfile中指定补丁级别才是正确的做法? 最佳答案 您可以在您的gemfile中设置ruby​​版本,例如:ruby"2.0.0"或者,如果你想设置引擎、engine_version等:ruby"1.9.3",:engine=>"jruby",:engine_version=>"1

ruby - 由于 rb-readline,使用 Elastic Beanstalk 将 rails 5 应用程序部署到 AWS 时出现问题

我正在尝试使用弹性beanstalk将我的代码部署到AWS,但在部署时一直遇到错误。我添加了一个gem'rb-readline',当我检查日志时,我发现这个gem在部署中有错误。我不记得添加gem'rb-readline'修复了什么错误,但我不知道删除gem是否可以解决这个问题。这是gem的链接:https://github.com/ConnorAtherton/rb-readline这是部署的错误日志。Applicationupdatefailedat2017-10-24T19:27:36Zwithexitstatus1anderror:Hook/opt/elasticbeansta

ruby-on-rails - 使用 Rails 控制台时 pry-stack_explorer 中的 NoMethodError

我正在为railsconsole使用pry。每当我在控制台中评估某些值时,NoMethodError会在bindings_equal?中引发,这是pry-stack_explorergem的一个方法。输入输出如下。这不是有害的,而是令人讨厌的。我想删除它。有人能帮忙吗?>bundleexecrailsconsoleLoadingdevelopmentenvironment(Rails4.1.5)Framenumber:0/21[1]pry(main)>[2]pry(main)>[3]pry(main)>1when_startedhookfailed:NoMethodError:priv

ruby : stack level too deep (SystemStackError) maxlimit

下面是我的示例代码:deftest(v)test(v-1)ifv>0pvend如果我调用test(11893)它工作正常。如果我有v>11893,它会抛出SystemStackError。如何增加此错误的限制? 最佳答案 MRI有tailrecursion优化默认关闭。但是一个人可能turniton:RubyVM::InstructionSequence.compile_option={tailcall_optimization:true,trace_instruction:false}此外,代码本身必须使用尾递归:deftest(

ruby-on-rails - 别名_方法 : stack level too deep

我正在尝试装饰来自另一个Rails引擎的Controller。我有一种Controller方法,我只想再用一行进行扩展。我不想复制整个原始Controller方法。这是我尝试过的:Backend::BaseContentsController.class_evaldodefbooking_update#dosomestuffupdateendalias_method:update,:booking_updateend不幸的是,这会引发异常stackleveltoodeep。通常通过继承我可以调用super。在我的情况下,理想的做法是什么? 最佳答案