0
だから私は下の構造体のためのマルチレベルのプッシュをしたい:mgoで配列要素のマルチレベルプッシュを行う方法は?
//push a new node in date array
query := bson.M{"branch":"400612", "unique_id":c.Unique_Id}
update := bson.M{"$push": bson.M{"date": bson.M{"event_timestamp": t, "event": []models.Event{
{
Event:models.INSPECTION,
Event_Id:"123456789",
Status:models.PENDING,
},
}}}}
err = look_up.Update(query, update)
if err != nil {
panic(err)
}
//push the data in the nested event
pushQuery := bson.M{"date.event": bson.M{"event": []models.Event{
{
Event_Name:models.INSPECTION,
Event_Id:"4984984198",
Status:models.PENDING,
},
}}}
err = look_up.Update(bson.M{"unique_id": "2549090", "date.event_timestamp":"08-05-2017"}, bson.M{"$push": pushQuery})
if err != nil {
//panic(err)
fmt.Print("error_2",err)
}
:
type Inspector_Pool struct{
Unique_Id string `json:"unique_id" form:"unique_id" query:"unique_id"`
Email string `json:"email" form:"email" query:"email"`
Branch []string `json:"branch" query:"branch"`
Date []Date `json:"date" query:"date"`
}
type Date struct {
Event_Timestamp string `json:"event_timestamp" query:"event_timestamp"`
Event []Event `json:"event" query:"event"`
}
type Event struct {
Event_Name string `json:"event_name" form:"event_name" query:"event_name"`
Event_Id string `json:"event_id" form:"event_id" query:"event_id"`
Status string `json:"status" query:"status"`
}
だから、私は何をしたいが、私は以下のコードを達成するために持っているので、どのようなイベント配列内のデータをプッシュすることですイベントオブジェクトではなく、日付オブジェクトに新しいエントリを作成してスナップショットを作成します
スクリーンショットの代わりに、実際のコードを投稿してください。 – chridam
@chridamがコードを更新しました。ありがとうございました。 – fayeed