2012-01-20 2 views
1

私のmongodbセットアップは私のデータをほとんど正規化しません。私はポストに表示したいだけのユーザーデータを保存します。しかし、私はまだ、常に投票のために関連ユーザーまたは関連する投稿のIDを保管しています。いくつかのidはajax呼び出し(最終的には文字列として格納される)から来て、他のものはmongodbサーバー側から直接来ます(OIDから来るデータ型に格納されます)。文字列またはOIDとして扱います。私の質問はより強く、すべてを文字列に変換するか、すべてをOIDに変換する必要がありますか?関連するキーをMongoDBのOIDまたは文字列として保存します

+0

あなたの_idがajax呼び出しから来たとき、どこから発信されましたか?それらが正しい形式でない場合、OIDに変換できない場合があります。 –

答えて

3

ObjectIds。それらはスペース効率が良く、ObjectIdsの比較は文字列の比較よりも高速です。入ってくる文字列を常にObjectIdに変換する必要があります(例:oid = new ObjectId(string))。私は実際にあなたが文字列を必要とする例外を考えることはできません。

+0

たとえば、キー名は?それらは文字列のみにすることができます。 –

+0

ええと、ObjectIdを持っていて、意図的に文字列に変換したいので、フィールド値として使うことができるシナリオがうまくいけば、少しのスキーマ問題のように聞こえるでしょう。しかし、それが理由であるかもしれないことはあなたが正しいです。それはそこにかなりある;) –

関連する問題