Rails 应用程序 - 显示所有结果而不是特定结果的搜索操作

Rails app - Search action showing all results instead of specific results

我想在我的 rails 应用程序中搜索帖子。问题是当我搜索某些东西时,它会显示数据库中的所有帖子而不是特定结果。这是 posts_controller.rb 中的操作:

def search
   @posts=Post.where('text LIKE ?', "%#{params[:text]}%")
end

这是 index.html.erb

中的搜索表单
<%=form_for(:post, :method=>'get', :url=>{:action=>'search', :html=> {:multipart=>true}}) do |f| %>
    <p>
        <%=f.text_field(:text)%>
        <%=submit_tag("Search")%>
    </p>
  <%end%>

这是控制台显示的内容

Started GET "/posts/search?utf8=%E2%9C%93&post%5Btext%5D=ror&commit=Search" for 127.0.0.1 at 2015-12-18 17:48:07 +0500
Processing by PostsController#search as HTML
  Parameters: {"utf8"=>"√", "post"=>{"text"=>"ror"}, "commit"=>"Search"}
  Post Load (0.0ms)  SELECT `posts`.* FROM `posts` WHERE (text LIKE '%%')

谁能解决这个问题?提前致谢。

P.S 我 运行 在 Rails 4.0.0

你做错了。 params[:text] 应该是 params[:post][:text]

def search
   @posts=Post.where('text LIKE ?', "%#{params[:post][:text]}%")
end