0

わかりました、電球のスイッチを入れる必要があります。私はこれに1週間近く苦労しており、ますます混乱しています.

私はこれらのコレクションを持っています:

Customers
Orders (linked to Customer by Customer_id)
OrderLines (linked to Order by Order_id)
Salesreps (linked to Customer by Customer_id)

埋め込みドキュメントはありません。

私がやりたいことは、次のもので構成されるデータの文字列を取得することです。

Customer_1

Order#1:First_OrderLine_of_Order_Number
Order#n:First_OrderLine_of_Order_Number

SalesRep_of_Customer_Name

...

Customer_n

Order#1:First_OrderLine_of_Order_Number
Order#n:First_OrderLine_of_Order_Number

SalesRep_of_Customer_Name

ノードとマングースでこれを行う方法を説明する疑似コードを誰かに教えてもらえますか? 釣り方を教わる必要があります;)

4

2 に答える 2

2

特に一度に複数のことを学ぼうとすると、イライラしたり混乱したりしやすくなります。物事を機能させるためにハッキングするだけではありません。一番下から始めて、スタックを上に向かって進みます。依存している層を完全に理解するまで、次の層に進む誘惑に抵抗してください。

  1. JavaScript
  2. Node.js
  3. モンゴDB
  4. マングース

forEachステップ 1 でスキルを学び、ステップ 2 で非同期コールバックのスキルを学びfind、ステップ 3 でドキュメントの作成方法を理解し、ステップ 4 ですべてをまとめます。 「釣りを学ぶ」。

于 2012-08-04T04:43:05.723 に答える
0

NoSQL (この技術の非常に悪い名前) を扱う場合は、別の方法でデータセットをセットアップする必要があります。

mongo には結合がないため、データをリファクタリングする必要があります。可能な場合は埋め込みドキュメントを考慮してください (たとえば、注文明細行が埋め込まれた注文)。

私はこのようなものを使用します:

Order: {
  _id: ObjectId
, user: DBRef // (or ObjectId)
, lines: [
    {foo: "bar"}
  , ...
  ]
}

User: {
  _id: ObjectId
, salesref: { _id: ObjectId, name: "James Brown"}
, more_data ...
}

SalesRef: {
  _id: ObjectId
, more_data...
}

参照されるコレクションへの最小限の参照を維持user: {name: "Max Power", sales: "James Brown"}し、注文内に を追加することもできますが、ドキュメントの変更/挿入中に手動で一貫性を保つ必要があることに注意してください。

于 2012-08-03T14:32:21.623 に答える