フィールドを持つUser
スキーマがありusername
ます。このフィールドで大文字と小文字を区別して、ユーザーがBobDylan
. ただし、新しいエントリを検証して重複がないことを確認するには、スキーマが必要bobdylan
です。
調査の結果、一意かどうかを簡単に確認できるように、スキーマに小文字と大文字のバージョンを格納する追加のフィールドを作成する必要があることがわかりました。私の質問は、Mongoose API を使用してこれをどのように達成するかということです。
set
次のような関数を使用してみました。
UserSchema.path('username_lower_case').set(function(username_lower_case) {
return this.username.toLowerCase()
});
ただし、この機能は実行されていないようです。私は基本的username_lower_case
に何であれusername
、小文字であると言う必要があります。