Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb mgo find将单值数组转换为字符串_Mongodb_Go_Mgo - Fatal编程技术网

Mongodb mgo find将单值数组转换为字符串

Mongodb mgo find将单值数组转换为字符串,mongodb,go,mgo,Mongodb,Go,Mgo,这是mongodb中我的集合架构的一部分: { "_id" : ObjectId("55e1eef5255da6d384754642"), "name" : [ "Web, Mobile & Software Dev", "Movil y desarrollo de software" ] } { "_id" : ObjectId("55e1f2d0255da6d38475464b"), "name" : [ "IT & Networking", "TI y Redes" ] }

这是mongodb中我的集合架构的一部分:

{ "_id" : ObjectId("55e1eef5255da6d384754642"), "name" : [ "Web, Mobile & Software Dev", "Movil y desarrollo de software" ] } { "_id" : ObjectId("55e1f2d0255da6d38475464b"), "name" : [ "IT & Networking", "TI y Redes" ] } ...
现在我可以得到如下信息:

 err := r.Coll.Find(bson.M{}).Select(bson.M{"name": bson.M{"$slice": []int{1, 1}}}).All(&result.Data)

但是我想让“name”返回一个字符串而不是一个单值数组,所以如果不需要的话,我不必在我的前端对它进行索引。

非常有限的评论我需要2000点来编辑我的文章并添加更多的内容,这似乎不是答案,但可能,所以我必须循环它,不是更好的方法吗

err := r.Coll.Find(bson.M{}).Select(bson.M{"name": bson.M{"$slice": []int{1, 1}}}).All(&result.Data)                                            
  if err != nil {                                                                                                                                 
      return result, err                                                                                                                          
  }                                                                                                                                               

  type skillnew struct {                                                                                                                          
      Id   bson.ObjectId `json:"id,omitempty" bson:"_id,omitempty"`                                                                               
      Name string        `bson:"name,omitempty" json:"name,omitempty"`                                                                            
  }                                                                                                                                               

  skillsallnew := make([]skillnew, len(result.Data))                                                                                              
  for i := range result.Data {                                                                                                                    
      skillsallnew[i] = skillnew{result.Data[i].Id, result.Data[i].Name[0]}                                                                       
  }    

所以我将不得不为所有记录自己循环并更改它,是不是有一个字符串的concat数组变成字符串,或者是一个casting之类的,当然?