0

を検索しません:Railsの3 - Solrには、私は単純なルール以下のいる<strong>写真</strong>モデルでアイテム

searchable do 
    string :note 
    end 

は、と私は(同時に二つのテーブルで)Solrのでいくつかの文字列を検索してみてください。

SOLR要求(4.8ms)[パス=#パラメータ= {データ:これは、端末におけるのSolrクエリーの出力(記事写真ための第二いずれかの最初のもの)であります:FQ =型%3A 条& Q = searched_string & FL =%の2A + & QF =タイトル+コンテンツスコア&をDEFTYPE = dismax開始& = 0 &行= 30、方法:ポスト、paramsは:{:重量= >:ruby}、クエリ:wt = ruby​​、ヘッダ: { Content-Type "=>" application/x-www-form-urlencoded;文字セット= UTF-8" }、 パスは:選択して、URI:READ_TIMEOUT、:http://localhost:8982/solr/select?wt=ruby、 open_timeout}]

この

SOLR要求(4.4ms)[パス=# パラメータ= {データ:FQ =種類%の3A 写真& Q = asgasg & FL =%の2A +スコア& DEFTYPE = dismax開始& = 0 &行= 30、方法:ポスト、paramsは:{:重量=> ruby}、クエリ:wt = ruby​​、head ers: {"Content-Type" => "application/x-www-form-urlencoded;文字セット= UTF-8" }、 パスは:選択して、URI:http://localhost:8982/solr/select?wt=ruby、 open_timeout:、READ_TIMEOUT:}]

がコントローラ:

@articles = Article.search do 
    fulltext params[:search] 
end 
@photos = Photo.search do 
    fulltext params[:search] 
end 
## => searching ## 
puts @articles.results #work fine 
puts @photos.results #always 0 

私は全く知りませんが、SOLRはdoesnの理由「Tは、すべてが指定して設定する必要があります... 写真モデルで検索するが、問題がどこにあるか、まだ、わかりません...

答えて

1

私は写真のモデルにあなたはとして:noteを定義するために持っていると思いますタイプ(ないstring)その上で全文検索を実行するために:

searchable do 
    text :note 
end 

はまた、あなたが@articles@photosを設定しますが、あなたの質問に@users@photosをチェックします。

UPDATE

sunspot readmeによると:。

「テキストフィールドは、フルテキスト検索可能になります他のフィールドを(例えば、スコープに使用することができ、整数や文字列)

ある

は、そのフィールドにfulltextまたはkeywordsを実行するために、」照会し、それが検索可能なブロックでtextとして宣言する必要があります。あなたはどのことができ、stringとしてそれを持っています唯一の完全一致がwith()を使用するために使用すること

幸運

+0

'note'は' varchar(255) 'ですが、' fulltext'ではなく 'keywords'を使用しようとしましたが、何もありません。 – user984621

+0

助けてくれてありがとう、サイモン。私は個別の投稿にソリューションを掲載しました。まあ... 'with' clausuleで文字列を使用しようとしましたが、それはうまくいきませんでした...私はtext/string列を検索しようとしましたが、' with'部分の設定なしでうまくいきました。それは、モデルの 'searchable'部分にいくつかの変更が加えられた場合、SOLRを再インデクシングするために常に必要と思われます... – user984621

0

私の問題の作業溶液:。。 1.ストップレールサーバ 2すくい黒点: 3.実行レールサーバREINDEX

searchableブロックですべてが変更された場合は、データを再インデックスする必要があります。

関連する問題