エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
RailsにてSQLでのワイルドカード文字をエスケープしてくれるsanitize_sql_likeは何をしているのか - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
RailsにてSQLでのワイルドカード文字をエスケープしてくれるsanitize_sql_likeは何をしているのか - Qiita
はじめに Rails4.21より、Stringクラスのオブジェクト内にある”%”や”_”といったLIKE句でのワイル... はじめに Rails4.21より、Stringクラスのオブジェクト内にある”%”や”_”といったLIKE句でのワイルドカード文字をエスケープしてくれるsanitize_sql_likeメソッドが使えるようになっています。 検索機能等においてLIKE句はよく使用するものであり、ワイルドカードはきちんとエスケープしないと非常に重いSQLが発行されることになりかねません 今回はソースコードを読むという行為の練習も兼ねて、このsanitize_sql_likeというメソッド内でどのような動作が行われているのかを追っていこうと思います まずはソースコード def sanitize_sql_like(string, escape_character = "\\") pattern = Regexp.union(escape_character, "%", "_") string.gsub(patter