2

のドキュメントmore_like_thisは、それを使用して、基準に基づいて類似している同じタイプのコンテンツをより多く取得する方法を示しています。

class Post < ActiveRecord::Base
  searchable do
    # The :more_like_this option must be set to true
    text :body, :more_like_this => true
  end
end

post = Post.first

results = Sunspot.more_like_this(post) do
  fields :body
  minimum_term_frequency 5
end

別のデータ型の関連アイテムを返すことができるかどうか疑問に思います。たとえば、Videosに関連/類似していArticlesます。

これは、「一連の基準に基づいてこれに類似しているものが多い」という方針に沿って動作しているか、「一連の基準に基づいてこれに類似しているものがmore_like_this多い」という方針に沿って動作しているかによって異なると思います。 ..ArticlesArticleArticle

これのユースケースは、を表示していArticleて、ページの横に関連コンテンツを表示したい場合です。他のコンテンツArticlesVideos同じカテゴリ、またはEvents関連トピックなどです。

4

1 に答える 1

4

http://sunspot.github.com/sunspot/docs/Sunspot.html#more_like_this-class_method

+(Object)more_like_this(object、* types、&block)MoreLikeThis検索を開始します。MoreLikeこれは、全文比較を使用して類似したドキュメントを検索する特殊なタイプの検索です。比較するtextフィールドは、:more_like_thisオプションをに設定して設定したフィールドtrueです。デフォルトでは、これに似ていると、比較に使用されるオブジェクトと同じタイプのオブジェクトが返されますが、オプションでタイプのリストをこのメソッドに渡して、他のタイプの同様のドキュメントを返すことができます。これは、共通のフィールドを持つタイプに対してのみ機能します。

例:

  post = Post.first
  Sunspot.more_like_this(post, Post, Page) do
    fields :title, :body
    with(:updated_at).greater_than(1.month.ago)
    facet(:category_ids)
  end

参照:http ://sunspot.github.com/sunspot/docs/Sunspot/Query/MoreLikeThis.html

于 2012-12-27T21:57:17.913 に答える