2017-03-07 10 views
0

nodeとmongodbでアルファベット順にソートしようとしています。これは私の現在の状態である、しかし、それは動作しません。NodeJS + MongoDB Sort Query

ここ
$addToSet: { 
    friends: { 
     $each: [{ 
      _id: req.body.globalUserId.toString(), 
      username: req.body.globalUserName, 
      language: req.body.globalUserLanguage, 
      profilePicture: req.body.globalUserProfilePicture 
     }], 
     $sort: {username: 1} 
    } 
} 

は、例えば、文書である:あなたが友人配列の下で見ることができるように

enter image description here

、それはその後、「R1」を行き、 '2番目。この配列をアルファベット順に並べ替えたいので、 'a'が最初に表示されます。どうすればいい?本当にありがとう!

username: String, 
email: String, 
password: String, 
language: { type: String, default: "English" }, 
profilePicture: { type: String, default: "/images/talk/blank-profile-picture.png" }, 
pendingFriends: [this], 
friends: [this] 
+0

あなたのコレクションからサンプルドキュメントを追加できますか? – Veeram

+0

さらにコードを追加してください。 – Remario

+0

右申し訳ありませんが、いくつかの情報を追加しました。もう少し情報が必要な場合は、教えてください –

答えて

0

セットは順不同であり、同じ理由$sortのためにサポートされていません。

は、ここでは、この特定のモデルのための私のスキーマです。

$pushは、注文を維持します。

$push: { 
    friends: { 
     $each: [{ 
      _id: req.body.globalUserId.toString(), 
      username: req.body.globalUserName, 
      language: req.body.globalUserLanguage, 
      profilePicture: req.body.globalUserProfilePicture 
     }], 
     $sort: {username: 1} 
    } 
}