2016-05-16 9 views
1

このトピックは本当に残念です。私は他の多くを見ていますが、私の問題を解決するために何かが私を助けることができます。mgoを使用してmongodbからデータを取得できません

だから、私は私のバックエンドで行く+のMgOを使用していると私が検索しなければならない構造がある:

type Video struct { 
    ID   bson.ObjectId `bson:"_id,omitempty"` 
    Title  string  `bson:"title"` 
    Duration  string  `bson:"duration"` 
    Url   string  `bson:"url"` 
    DefaultThumb string  `bson:"defaultthumb"` 
    SiteID  SiteProfile `bson:"siteid"` 
} 

表「の動画は、」情報の2KK +を有し、第1、私が選択する必要がありますこの構造体に格納されている彼のサイトプロファイルからこれらのビデオ:その後

type SiteProfile struct { 
    ID   bson.ObjectId `bson:"_id,omitempty"` 
    Name  string  `bson:"name"` 
    Site  string  `bson:"site"` 
    ExportUrl string  `bson:"exportUrl"` 
    ExportType string  `bson:"exportType"` 
} 

、私は、プロファイルのループ内で、同じプロファイルを持つ要求を取得するために、このコマンドをやっている:

var videos []Video 
    collVideos.Find(bson.M{"siteid.name": profile.Name}).All(&videos) 

ログメッセージでは、空の配列を取得していて、ノードベースのRobomongoを使用して同じことをしています。これらの行は通常、サイトプロファイルによってリストされています。では、ネストされたオブジェクトを検索して、これらのデータをどのように取得することができますか?

ありがとうございました!

+0

「Find」のエラーリターンを無視しないでください。 –

+0

@ JiangYDありがとう!私はこれらのコード行を修正しますが、エラーは返されません! –

+0

これらのmgo.SetDebugを使用してmgoログをチェックしてみてください(真) \t mgo.SetLogger(log.New(os.Stdout、 "err"、6)) –

答えて

0

まあ、本当に変ですが、コードを書き直して、findメソッドのエラーを確認するとうまくいきます。私はちょうどこれをしました:

var videos []Video 
    err := collVideos.Find(bson.M{"siteid.name": profile.Name}).All(&videos) 
    CheckError(err) 
関連する問題