Postgres hstore和Rails太阳黑子solr

时间:2013-10-23 04:28:54

标签: ruby-on-rails postgresql solr sunspot-rails sunspot-solr

我有一个应用程序,它在很大程度上依赖于postgres中的hstore类型。我无法克服的问题是让hstore可以在太阳黑子中搜索。这是我正在处理的一些代码

class Post < ActiveRecord::Base 
  # properties is type hstore
  %w[price condition website].each do |key| 
    store_accessor :properties, key 
  end 
 ... 
  searchable :auto_index => false, :auto_remove => false do 
    text :title, :boost => 5.0 
    integer :category 
    integer :subcategory 
    # this is whats giving me the problem
    string :properties["price"] 
  end
end

我尝试添加不同类型,但似乎没有任何效果。这是一项尚未支持的功能吗?

1 个答案:

答案 0 :(得分:1)

Hstore基本上是一个存储键和值的哈希,所以你要做的就是遍历键并查找它们。

以下是工作代码:

searchable :auto_index => false, :auto_remove => false do 
  text :title, :boost => 5.0 
  integer :category 
  integer :subcategory 
  %w[price condition website].each do |key|
    string key.to_sym do
      properties[key]
    end
  end
end

希望将来他们会支持

hstore :properties