Rails(2.3.9ですが、この問題が3.0.3にも存在することを確認しました)アプリケーションの検索フォームを作成しています。問題は、Railsがユーザー入力から引用符を削除していることです。私はユーザーに書く可能性を与えたいと思います:
- "ruby on rails":これは全文で文字列全体を検索します
- ruby on rails:これはこれら3つの単語すべてを含む記事を検索します
しかし、どちらの場合も私のコントローラーでは、1つの文字列しか取得していません。
Processing NewsController#index (for 127.0.0.1 at 2010-11-23 10:23:15) [GET]
Parameters: {"action"=>"index", "controller"=>"news", "search"=>{"category"=>"", "news_agency"=>"", "fullsearch"=>"ruby on rails", "order"=>""}}
この引用符の削除をスキップするオプションはありますか?
備考: ユーザーが検索文字列の両側にスペースを追加すると、たとえば次のようになります。'"ruby on rails"'文字列は正しく送信されます:
Processing NewsController#index (for 127.0.0.1 at 2010-11-23 10:23:15) [GET]
Parameters: {"action"=>"index", "controller"=>"news", "search"=>{"category"=>"", "news_agency"=>"", "fullsearch"=>" \"ruby on rails\" ", "order"=>""}}