Mongoose スキーマからモデルを抽象化したい:
AddressSchema = mongoose.Schema(
_type: String
first_name: String
last_name: String
address_line1: String
address_line2: String
zip_code: String
city: String
state: String
phone_number: Number
)
AddressSchema = Schema.AddressSchema
そして、後で次のようにします。
ShippingChoicesRequestSchema = mongoose.Schema(
retailer: String
products: [ ProductSchema ]
shipping_address:
ref: AddressSchema
type: ObjectId
)
しかし、リクエストを送信すると、このネストされたアドレス ドキュメントが作成されません。のようなことを行うことでこれを配列として実行できることはわかっていますがshipping_address: [ AddressSchema]
、それが繰り返しフィールドでない場合はどうなるでしょうか?
編集:
リクエストは次のようになります。
{
"retailer": "something",
"products": [...],
"shipping_address": {
"_type": "address",
"first_name": "...",
"last_name": "...",
"address_line1": "...",
"address_line2": "...",
"zip_code": "...",
"city": "...",
"state": "...",
"phone_number": ...
}
}
しかし、Mongo で調べると、次のようになります。
{
"retailer" : "something",
"_id" : ObjectId("526ad0a3c0cff58a54000001"),
"products" : [
{
"variant_choice" : {
"unit_price" : 3999,
"color" : "Black",
"size" : "M",
"_type" : "variant_choice"
},
"quantity" : 1,
"product_id" : "123456",
"_type" : "product"
}
],
"__v" : 0
}
そのため、アドレスは保存されません。