2012-03-14 9 views
0

を探して、私は列を含むテーブルsymbols持っている:id and symbol_nameidは私の記号モデルでは、そのテーブルsearchlogic - attr_accessor

の主キーである、私は私のインデックスに

class Symbol < ActiveRecord::Base 

def symbol_id 
"EMI:#{self.id}" 
end 

end 

を持っています。 html.erbページでは、検索テキストフィールドに「EMI:777」と入力すると、ID 777のシンボルを検索できます。

検索にsearchlogicを使用しています。任意の提案が最も

答えて

0

お勧めしますように見えるthis postによると高く評価され

The condition 'symbol_id' is not a valid condition, we could not find any scopes that match this. 

:私は、検索フォームに「symbol_id」を使用する場合

<% form_for @search do |f| %> 
    Search: 
    <%= f.text_field :symbol_id_or_symbol_name_like %> 
    <%= f.submit "Search" %> 
<% end %> 

は、私は、次のエラーメッセージが表示されます仮想属性に基づいてscopeを実行する:

class Symbol < ActiveRecord::Base 
    attr_accessor :symbol_id 
    scope :symbol_id_search, where("symbol_id = ?", symbol_id) 

    def initialize 
    @symbol_id = "EMI:#{self.id}" 
    end 

end 

scopeが正しいかどうかわからないので、モデル、コントローラなどに基づいて少し掘り下げて調べる必要があります。