フレンドリーなIDの大文字と小文字を区別しない方法は?
-
12-12-2019 - |
質問
URL CAS鈍感でTwitterのユーザー名を複製する方法:
- www.site.com/users/my_name
- www.site.com/users/my_name
- www.site.com/users/my_name
これらのすべてのURLを使用すると、ユーザー名が「my_name」などに保存されている場合はユーザーページを開きます。
とmodel.find( 'my_name')メソッドmy_nameという名前のユーザーレコードを見つけます。
解決
比較の場合は、データベース内および検索入力の両方の場合を正規化することで、入力ケースに関係なく検索が常に結果を返すようにすることです。
-
常にデータベースに保存する前に常にダウンケース
-
cassive methodを使用して、大文字と小文字を区別しません。
あなたはいます。
元のユーザー名の場合を変更したくない場合は、ダウンコードバージョンを保存するユーザーテーブルに2番目の列を追加します。次に、元のユーザーフィールドの代わりにこのフィールドの検索を実行してください。
所属していません StackOverflow