我创建这个结构:
type Country struct {
Id interface{} `bson:"_id,omitempty"`
Languages []string `json:"languages"`
Country string `json:"country"`
Country_id int `json:"country_id"`
Capital string `json:"capital"`
Currency_name string `json:"currency_name"`
Currency_symbol string `json:"currency_symbol"`
Currency_code string `json:"currency_code"`
Iso string `json:"iso"`
}
然后从 Mongo 获得我需要的所有数据。问题是当我尝试附加每个元素时,语言被覆盖。
这是附录:
func GetAllCountries() []models.Country {
options := options.Find() options.SetLimit(4)
cur, err := db.Collection(COLLCOUNTRIES).Find(context.Background(), bson.D{}, options)
if err != nil {
log.Fatal(err)
}
var elements []models.Country
var elem models.Country
// Get the next result from the cursor
for cur.Next(context.Background()) {
err := cur.Decode(&elem)
if err != nil {
log.Fatal(err)
}
elements = append(elements, elem)
}
if err := cur.Err(); err != nil {
log.Fatal(err)
}
cur.Close(context.Background())
return elements
}
结果是这样的:
-- 追加之前的元素 --
{ObjectID("5d7f6b2b57d5104f58e53d2b") [ar-AE fa en hi ur] United Arab Emirates 290557 Abu Dhabi Dirham د.إ AED AE}
-- 追加之前的元素 --
{ObjectID("5d7f6b2b57d5104f58e53d2c") [fa-AF ps uz-AF tk] Afghanistan 1149361 Kabul Afghani ؋ AFN AF}
——所有结果——
[{ObjectID("5d7f6b2b57d5104f58e53d2b") [fa-AF ps uz-AF tk ur] United Arab Emirates 290557 Abu Dhabi Dirham د.إ AED AE} {ObjectID("5d7f6b2b57d5104f58e53d2c") [fa-AF ps uz-AF tk] Afghanistan 1149361 Kabul Afghani ؋ AFN AF}]
红糖糍粑
相关分类