上のルビーを現時点では、私のコードは次のようになります。が作用-として-タグ付けできるオン、Railsの
@events = Event.tagged_with(params[:search_input])
しかし、このようなクエリは、SQL-注射可能としなければなりません避けてください。しかし
Model.where("login = ? AND password = ?", entered_user_name, entered_password).first
、私は、ユーザー入力をサニタイズする方法を、知らない:
Rubyonrails.orgは、このような攻撃(http://guides.rubyonrails.org/security.html#sql-injection)例えば
、使用してquestionmarksを回避する方法、を教えてくれるこの宝石。
@events = Event.tagged_with("?", "%#{params[:search_input]}%")
しかし、これは次のエラーにつながる:私は次のことを試してみました、この入力をサニタイズする方法、
TypeError (no implicit conversion of Symbol into String):
任意のアイデア?前もって感謝します!
私は宝石のレポで次の問題を発見しました:https://github.com/mbleigh/acts-as-taggable-on/issues/670あなたは同意しないのですか、それとも何か違うのですか? – Mauddev
この問題はこの問題とは異なるようです。この質問は、SQL(ActiveRecord)で使用するためのサニタイズ方法について質問します。リンクした問題は、タグの解析が適切に行われるようにする方法を尋ねるもので、デフォルトのパーサーを使用することをお勧めします。これらは実際には異なる懸念事項です。 –