2017-05-18 11 views
0

各ユーザーのコレクションでmongodbデータベースを作成し、各コレクションの名前はユーザー名と同じになります。変数をコレクション名としてdb.collectionを使用できますか?

ここで、関数を使ってユーザー名を取得し、変数xに保存します。私は使用することができます:

var x = getUserName(name); 
    db.createCollection(x, options); 

db.x.find(); 
db.x.insert(); 

など?

正常に機能しますか?または変数xの値ではなく "x"という名前のコレクションを探しますか?

答えて

2

あなたはこのためdb.getCollection()を使用することができます。

var x = getUserName(name); 
db.createCollection(x, options); 

db.getCollection(x).find(); 
db.getCollection(x).insert(); 
+0

はありがとうございました!私はそれを試してみます! – Daniel

0

代替構文は次のように、角括弧を使用することです:

var x = getUserName(name); 
db.createCollection(x, options); 

db[x].find(); 
db[x].insert(); 
関連する問題