1

我在同一个 Ubuntu 服务器上有一个 Rails 3 应用程序的暂存和生产实例(使用轮胎 gem)。看来这两个实例都共享相同的弹性搜索索引,这显然不是我想要的。

如何让我的生产和暂存实例使用单独的实例?

4

1 回答 1

5

您需要覆盖索引名称。假设您正在绑定 ActiveRecord,它将根据相关模型创建一个索引名称。您可以使用这样的前缀调整名称;

class Article < ActiveRecord::Base

  include Tire::Model::Search
  include Tire::Model::Callbacks

  index_prefix "#{Rails.env}" 

  ...

然后将创建一个名为 的索引development_articlesproduction_articles等等。重要的index_prefix是轮胎包含之后。

或者完全重命名索引

class Article < ActiveRecord::Base

  include Tire::Model::Search
  include Tire::Model::Callbacks

  index_name "My-Development-Article-Index" 

  ...
于 2012-07-11T07:31:58.743 回答