私はレール初心者です。ツイートに単純な検索を実装しようとしていますが、検索している特定のツイートではなく、そこにあるツイート全体が表示されます。SQLITE と Rails 3.2.6 の使用
RailsCasts#37 と他のチュートリアルをたくさん見ましたが、どこで間違いを犯しているのかわかりません。
私のツイートモデル
class Tweet < ActiveRecord::Base
belongs_to :user
attr_accessible :body
def self.search(search)
if search
find(:all, :conditions => ['body LIKE ?', "%#{search}%"])
else
find(:all)
end
end
end
コントローラ
@tweets = Tweet.search(params[:search])
インデックス ページのフォーム
<%= simple_form_for tweets_path, :method => 'get', :html => { :class => 'pull-right' } do |f| %>
<%= f.input :search, :label => false, :input_html => { :class => 'span3'} %>
<% end %>
ツイートの移行
class CreateTweets < ActiveRecord::Migration
def change
create_table :tweets do |t|
t.text :body
t.references :user
t.timestamps
end
add_index :tweets, :user_id
end
end
検索したときのURL!
http://localhost:3000/tweets?utf8=%E2%9C%93&%2Ftweets%5Bsearch%5D=awesome
ヘルプとサポートを探しています!前もって感謝します!