私のユーザコレクションでは、私は連絡先の配列を含むオブジェクトを持っています。 オブジェクト定義は以下のとおりです。 このオブジェクト全体を、連絡先の完全な配列とともに、サーバからMeteorのユーザデータベースに、理想的には単一のコマンドで書き込むことはできますか? 私はmongoドキュメントと流星ドキュメントを読むのにかなりの時間を費やしましたが、これを動作させることはできません。 私はまた、オブジェクト全体を使用して、これを達成しようとするためにコンポーネント部分を反復することで、多数の異なるコマンドとアプローチを試みましたが、失敗しました。ここでは全体の接点が$セットを使用してオブジェクトの書き込みを試みる(失敗した)の例である:オブジェクトの配列を含むオブジェクトをMeteorのmongoデータベースに書き込み
Meteor.users.update({ _id: this.userId }, {$set: { 'Contacts': contacts}});
ありがとうございました。
オブジェクト定義(これはユーザーコレクション内のフィールドである):
"Contacts" : {
"contactInfo" : [
{
"phoneMobile" : "1234567890",
"lastName" : "Johnny"
"firstName" : "Appleseed"
}
]
}
ありがとうございました。データを書き込むために投稿したコードは機能しません。結果を正しく表示していないだけではありません。なぜそれが動作しないのか分かりません。私は、データベースツール(例えば、MongoChef)を使用してデータベースの内容を直接チェックすることでこれを検証してきました。また、更新が行われていないことをさらに検証する作業用の出版物があります。私が(別の種類の)アップデートを取得すると、クライアント側はその変更を正しく示します。また、これをテストするためにmeteor mongoで読み書きに使用するコマンドをLMKできますか?もう一度おねがいします... – user2330237
mongoでは、 'db.user.find( 'yourIdHere')'を試してください。コンソール出力にそのオブジェクトがあるはずです。何があるかを確認するために、更新の前にあなたのコードに 'console.log(contact)'も入れてください。 –
ご協力ありがとうございます。問題はシンプルなスキーマ検証...フィールド名のタイプミスであることが判明しました。 – user2330237