How do you select all records from a mongodb collection in golang using mgo

Dean picture Dean · Jul 10, 2014 · Viewed 27.7k times · Source

In MongoDB doing something like db.mycollection.find() returns all documents in a collection.

When working in GoLang using the package labix.org/v2/mgo and I do for example:

query := db.C("client").Find();

It complains that it requires input in the form of an interface. All I need to do is retrieve all documents and iterate through them and display each one for now. How do I achieve this effect? All examples I have seen seem to have filters in place.

Answer

Dean picture Dean · Jul 10, 2014

Found a solution:

    var results []client

    err := db.C("client").Find(nil).All(&results)
    if err != nil {
        // TODO: Do something about the error
    } else {
        fmt.Println("Results All: ", results) 
    }