5

URL cas insensitive で Twitter ユーザー名を複製するにはどうすればよいですか。

そして、これらすべての URL は、ユーザー名が「MY_Name」などとして保存されている場合にユーザー ページを開きます。

そして Model.find('my_NAmE') メソッドは MY_Name という名前のユーザー レコードを見つけます。

4

1 に答える 1

7

大文字と小文字を区別しないようにする方法は、データベースと検索入力の両方で大文字と小文字を正規化することです。これにより、入力の大文字と小文字に関係なく、検索で常に結果が返されます。

  1. データベースに保存する前に、常にユーザー名を小文字にしてください

  2. またはカスタムメソッドを使用Model.find(params[:id].to_s.downcase)して、大文字と小文字を区別しない検索を実行します

あります。

元のユーザー名の大文字と小文字を変更したくない場合は、小文字のバージョンを格納するユーザーテーブルに2番目の列を追加します。次に、元のユーザーフィールドではなく、このフィールドで検索を実行します。

于 2012-10-01T13:27:00.433 に答える