2017-10-19 6 views
-1

私は人々がオファーを投稿して検索するWebページプロジェクトに取り組んでいます。私はこれに真に新しく、簡単な検索フォームを作る方法について研究してきました。私は現在searchkickの宝石で働いています。私は多くのチュートリアルに従っていますが、私のコードはうまくいかないようです。ここでは、事前searchkickでRORを検索しても動作しません

にありがとうsearchkickドキュメントから、私の関連するコード

#app/controllers/offers_controller.rb 
    class OffersController < ApplicationController 
     before_action :authenticate_user! 
     before_action :set_offer, only: [:show, :edit, :update, :destroy] 

     def index 
     search = params[:term].present? ? params[:term] : nil 
     @offers = if search 
       Offer.search(search) 
      else 
       Offer.all 
      end 
     end 


#db/migrate/create_offers.rb 
class CreateOffers < ActiveRecord::Migration[5.1] 
    def change 
     create_table :offers do |t| 
     t.string :nombre 
     t.text :descripcion 
     t.string :imagen, null:true 
     t.references :user, foreign_key: true 
     t.timestamps 
     end 
    end 
end 

#app/models/offer.rb 
class Offer < ApplicationRecord 
    searchkick word_start: [:nombre] # word_middle: [:nombre, :descripcion] 


    def search_data 
    { 
    nombre: nombre, 
    descripcion: descripcion 
    } 
    end 

#app/views/layouts/_header.html.erb 
    <div class="input-group-btn search-panel"> 
      <%= submit_tag 'Search', name: nil, class: "btn btn-default" %> 
    </div> 
+0

を試してみてください? – sawa

+0

なぜ機能しないのですか? –

+0

エラーが発生していますか?もしそうなら、それを共有してください。 irbコンソールセッションで 'Offer.search(あなたの検索語句)'を実行しようとしましたか?正しい結果が表示されたら、そのコード行を除外することができます。あなたの検索語はparams [:term]に正しく渡されていますか?ログに印刷して確認します。 – BigRon

答えて

0

である、あなたの質問は何この

Offer.search search, fields: [:nombre], match: :word_start 
関連する問題